新手程序员,如何提高面向对象编程能力?

2019-01-31 22:32:19 +08:00
 Riverrun

刚入职不久,但是部门产品已相对成熟,平时的工作多是看代码、修 bug,做需求也不会对原有代码结构做太大的变动;觉得如果真的要自己动手写这样一个产品会非常吃力。

请问平时自己学习时该如何提高面向对象编程的能力?

5947 次点击
所在节点    程序员
41 条回复
shylockhg
2019-02-01 09:09:48 +08:00
用 c 实现面向对象思想呗,
不要 c++/java/python 这些原生实现影响了,
关注面向对象的三大原则,自己用 c 模拟。
比如 Linux 内核的 container_of。
chiu
2019-02-01 09:11:29 +08:00
C 也可以写面向对象的 C
SorcererXW
2019-02-01 09:13:38 +08:00
学一下设计模式
zhwithsweet
2019-02-01 09:16:15 +08:00
来吧,haskell。Fb 好玩一万倍(滑稽
frylkrttj
2019-02-01 09:19:43 +08:00
@Andiry @chiu 有没有 C 面向对象的书或者教程我想看看
frankyxu
2019-02-01 09:58:41 +08:00
首先,你得有个对象
guanhui07
2019-02-01 10:03:28 +08:00
看看设计模式,把各种语法用熟悉 应用到写各种封装类库
no1xsyzy
2019-02-01 10:30:56 +08:00
C 的话不妨稍微看看 CPython 的源码?
或者是哪个地方解释为什么 Python 方法需要 self —— 为了弄得像是 C OOP 一样。
StubbornC
2019-02-01 10:39:49 +08:00
没点进来之前还以为是找女朋友经验贴,失望啊阿仔(狗头
wingpui
2019-02-01 10:44:09 +08:00
楼上大大们都说得很对啦,经验到了,自然会升级的,技能都可以领悟的
OMan
2019-02-01 10:45:21 +08:00
首先,你要有个 对象。之后才能真正的实现,面向 对象 编程。
hievan
2019-02-01 11:04:06 +08:00
先找个“对象”吧.
zhazi
2019-02-01 11:23:41 +08:00
不知道楼上一群人在说啥
你可以尝试用编程语言写个小短篇故事
比如
“一个人在逛超市”
如何形容这个人,这个人在超市里能干什么,这个人本身能干什么,超市如何形容
用汉语描述一遍,用编程语言表述一下你的汉语描述
如果程序读起来没有歧义我觉得你就知道什么是面相对象了,
如果把这句话转换成公司的商业业务你也应该能找到业务中的 “人”和“超市”
wei375653972
2019-02-01 11:28:48 +08:00
首先得找个对象,才能面向对象 你说是吧
libook
2019-02-01 11:46:07 +08:00
理论都了解的话,还是的练,自己做点小项目啥的,比如做些工具库,尝试使用面向对象的思想来设计。

不过面向对象不能一招走天下,其他的变成思想最好也看看,项目上灵活使用。
qwingmix
2019-02-01 15:11:08 +08:00
当你有的一个项目不停地增长的时候,必然遇到 OOP 来解决重复代码的问题。 不然你要改动的个东西, 就要是 N 个重复代码的地方改动,效率会非常低。 这是最基本款的面向对象的好处。
tiedan
2019-02-01 16:17:47 +08:00
找个对象
ByZHkc3
2019-02-01 16:27:42 +08:00
new Object();
Object.create();
const MyGirl = {name:'Anna'};
const MyGirl = function(name){
return {

}

}
kakudesu
2019-02-01 16:38:07 +08:00
分三步把大象装进冰箱
xxgirl2
2019-02-01 16:44:45 +08:00

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/532280

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX