由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
SanFrancisco版 - Object Oriented Programming到底有什么好处?
相关主题
和老印比,中国人推销自己确实不行呀 (转载)面向对象技术
比同同水饺更便宜好吃的手工水饺有没有?呼吁探亲父母包饺子,馄饨,包子卖。只会C,怎么办?
crawl space muddy or 积水的问题 (转载)人生第一个据信,发题目(Eze Castle)回报本版,另以贴为证,
FB招聘data/BI engineer contractor我来挖坑, 谈谈OOP/FP/SQL和人类思维习惯
OOP里面的Object其实是actor学FP不是为了写代码, 而是为了优秀的架构.
Why oop is bad?java最大的问题就是让所有的别人写的JAR库放网上, 没有 (转载)
JS就应该杜绝OOP半路出家三流CS小硕找工作经验
C 和 C++ 相比有什么优点?联想的几个Purchase Programs, 自己比较价格,只有官网有cb
相关话题的讨论汇总
话题: oriented话题: object话题: ori话题: oop
进入SanFrancisco版参与讨论
1 (共1页)
q**j
发帖数: 10612
1
我承认我很老土,从来都是process oriented programming。现在在看一些obejct ori
tented 的书。可是我不论怎么想,觉得没有什么本质区别。请高手给解释一下好吗?
k**l
发帖数: 2966
2
就是个不同职责的单位有效分工的问题

ori

【在 q**j 的大作中提到】
: 我承认我很老土,从来都是process oriented programming。现在在看一些obejct ori
: tented 的书。可是我不论怎么想,觉得没有什么本质区别。请高手给解释一下好吗?

q**j
发帖数: 10612
3
不是很明白。是不是就是变量和函数多了的时候容易分得清楚一些?
可是吧这些东西都放在内存里面是不是会慢一些?

【在 k**l 的大作中提到】
: 就是个不同职责的单位有效分工的问题
:
: ori

f*****y
发帖数: 204
4
encapsulation, inheritance and polymorphism.
q**j
发帖数: 10612
5
encapsulation可以理解。inheritance就不明显了。函数也可以叫函数吗。polymorphi
sm什么意思?

【在 f*****y 的大作中提到】
: encapsulation, inheritance and polymorphism.
k**l
发帖数: 2966
6
These words are generalized after they found these neat ways to solve
programing problem. They are too conceptual. You won't understand them
unless you face/study the problem, then solution. There is no point
understanding them without real examples either.
Why do you need that if you don't write large scale program?

polymorphi

【在 q**j 的大作中提到】
: encapsulation可以理解。inheritance就不明显了。函数也可以叫函数吗。polymorphi
: sm什么意思?

S*******d
发帖数: 51
7
主要是有利于大型软件的可维护性。
相对独立的components只对外expose interfaces。即使内部实现改变,但不影响与其
交互的其他components。

ori

【在 q**j 的大作中提到】
: 我承认我很老土,从来都是process oriented programming。现在在看一些obejct ori
: tented 的书。可是我不论怎么想,觉得没有什么本质区别。请高手给解释一下好吗?

a******o
发帖数: 16625
8
本菜鸟认为,主要是可扩展性要强。
次要原因是,分工明确,减少全局变量,class就像一个个盒子把东西整理得很清楚,
你只要考虑逻辑关系,而不用太多考虑程序的物理结构,比如先后顺序。如果你写过那
些平面程序就会发现,一旦程序规模变大,变量来回出现几次就很容易出问题。所以古
代程序那些 call, goto 现在基本都不用了。

ori

【在 q**j 的大作中提到】
: 我承认我很老土,从来都是process oriented programming。现在在看一些obejct ori
: tented 的书。可是我不论怎么想,觉得没有什么本质区别。请高手给解释一下好吗?

d*******d
发帖数: 2050
9
oop更符合人认识世界和与世界互动的自然模式。

【在 q**j 的大作中提到】
: 我承认我很老土,从来都是process oriented programming。现在在看一些obejct ori
: tented 的书。可是我不论怎么想,觉得没有什么本质区别。请高手给解释一下好吗?

z******a
发帖数: 5381
10
这是一个坑,可惜你们都没看出来。呵呵呵
相关主题
Why oop is bad?面向对象技术
JS就应该杜绝OOP只会C,怎么办?
C 和 C++ 相比有什么优点?人生第一个据信,发题目(Eze Castle)回报本版,另以贴为证,
进入SanFrancisco版参与讨论
l******c
发帖数: 2555
11
fen keng

【在 z******a 的大作中提到】
: 这是一个坑,可惜你们都没看出来。呵呵呵
q**j
发帖数: 10612
12
没有挖坑,我是认真问问题的。

【在 l******c 的大作中提到】
: fen keng
x***m
发帖数: 1733
13
More manageable at modeling the world. if 100,000 lines is limit of your
mind to master process language, OOP, you can manage 1000,000 lines

【在 q**j 的大作中提到】
: 没有挖坑,我是认真问问题的。
c*****e
发帖数: 3226
14
oop都过时了,你还活在上上时代。现在流行的是function programming + oo。
硅公淘汰的太快了。

ori

【在 q**j 的大作中提到】
: 我承认我很老土,从来都是process oriented programming。现在在看一些obejct ori
: tented 的书。可是我不论怎么想,觉得没有什么本质区别。请高手给解释一下好吗?

z******a
发帖数: 5381
15
求科普一下function programming + oo的核心精神是神马

【在 c*****e 的大作中提到】
: oop都过时了,你还活在上上时代。现在流行的是function programming + oo。
: 硅公淘汰的太快了。
:
: ori

g*********e
发帖数: 14401
16
核心精神就是让编程从写machine code成为普通人也能干的活
n******h
发帖数: 2482
17
Go functional if you will. All respect if you are a master of lisp/scheme/
whatsoever.
Mixing functional with OO, however, blows up my mind.
Buzzword-listing doesn't make someone fashionable.

【在 c*****e 的大作中提到】
: oop都过时了,你还活在上上时代。现在流行的是function programming + oo。
: 硅公淘汰的太快了。
:
: ori

M*****R
发帖数: 650
18
My understanding is that OOP gained popularity because it appeals to data-
centric applications, in particular if the data you are dealing with are
chunks of logically related information. Most business applications fall
into this category, they deal with business data (transactions, address
books, etc) that can be easily separated into entities that are logically
related (objects and relations) and categorized (object hierarchy)
OOP, and databases, they reinforce each other's popularity in last 20 years.
On the other hand, if you are dealing with application that is highly
process-driven, rather than evolving around a certain piece of logic
information, structured programming is sufficient in many cases. Socket
programming is an example.
Nowadays, people care a lot about scalability, and contrary to traditional
MPP thinking, due to the architectural limit of data storage, scalability is
now all about keep computation and data as close as possible. This lead to
the popularity in functional programming: lambda expression in C++/Java/C#,
Scala, Erlang, etc.

ori

【在 q**j 的大作中提到】
: 我承认我很老土,从来都是process oriented programming。现在在看一些obejct ori
: tented 的书。可是我不论怎么想,觉得没有什么本质区别。请高手给解释一下好吗?

c****f
发帖数: 1102
19
很简单 对比ruby和perl就知道了
一个初级perl程序员写出来的代码 需要一个高级perl程序员去维护
一个初级ruby程序员写出来的代码 懂点ruby的都可以去修修补补
都是在有注释的情况下
s**********n
发帖数: 2343
20
就是纯粹的忽悠。
面向进程,面向对象,面向功能,。。。面向哪儿还不就是那么几行01010011。

ori

【在 q**j 的大作中提到】
: 我承认我很老土,从来都是process oriented programming。现在在看一些obejct ori
: tented 的书。可是我不论怎么想,觉得没有什么本质区别。请高手给解释一下好吗?

相关主题
我来挖坑, 谈谈OOP/FP/SQL和人类思维习惯半路出家三流CS小硕找工作经验
学FP不是为了写代码, 而是为了优秀的架构.联想的几个Purchase Programs, 自己比较价格,只有官网有cb
java最大的问题就是让所有的别人写的JAR库放网上, 没有 (转载)Unix SAS programming vs PC SAS programming
进入SanFrancisco版参与讨论
q**j
发帖数: 10612
21
这个没有关系吧。python完全可以写成process drive or object driven,都很容易看
懂。你这个例子是perl比较难看懂而已。

【在 c****f 的大作中提到】
: 很简单 对比ruby和perl就知道了
: 一个初级perl程序员写出来的代码 需要一个高级perl程序员去维护
: 一个初级ruby程序员写出来的代码 懂点ruby的都可以去修修补补
: 都是在有注释的情况下

r******l
发帖数: 10760
22
程序变慢是有可能,但是现在编译器都优化得很好了,应该不会变慢多少。但是程序开
发和维护的难度大大降低了啊。
如果真的是十分注重运行速度,那还是直接上汇编吧。

【在 q**j 的大作中提到】
: 不是很明白。是不是就是变量和函数多了的时候容易分得清楚一些?
: 可是吧这些东西都放在内存里面是不是会慢一些?

c*****e
发帖数: 3226
23
python 就是典型的oo + function program 的混合体。流行的技术不会只是buzzword
而已。你要不去找几个热门的start-up看看。

【在 n******h 的大作中提到】
: Go functional if you will. All respect if you are a master of lisp/scheme/
: whatsoever.
: Mixing functional with OO, however, blows up my mind.
: Buzzword-listing doesn't make someone fashionable.

c*****e
发帖数: 3226
24
well said.还有那几个好的function languages开发起来速度快,而且非常灵活,不要
再纠结synchronization 保护,内存leak,进程管理。比如scalar, erlang

years.

【在 M*****R 的大作中提到】
: My understanding is that OOP gained popularity because it appeals to data-
: centric applications, in particular if the data you are dealing with are
: chunks of logically related information. Most business applications fall
: into this category, they deal with business data (transactions, address
: books, etc) that can be easily separated into entities that are logically
: related (objects and relations) and categorized (object hierarchy)
: OOP, and databases, they reinforce each other's popularity in last 20 years.
: On the other hand, if you are dealing with application that is highly
: process-driven, rather than evolving around a certain piece of logic
: information, structured programming is sufficient in many cases. Socket

s*******e
发帖数: 4188
25
Could you elaborate on "scalability is now all about keep computation and
data as close as possible"?

years.

【在 M*****R 的大作中提到】
: My understanding is that OOP gained popularity because it appeals to data-
: centric applications, in particular if the data you are dealing with are
: chunks of logically related information. Most business applications fall
: into this category, they deal with business data (transactions, address
: books, etc) that can be easily separated into entities that are logically
: related (objects and relations) and categorized (object hierarchy)
: OOP, and databases, they reinforce each other's popularity in last 20 years.
: On the other hand, if you are dealing with application that is highly
: process-driven, rather than evolving around a certain piece of logic
: information, structured programming is sufficient in many cases. Socket

b*****e
发帖数: 131
26
个人认为:OOP是一种更好的建模方式。
把需要解决的问题拆分成对象,要比拆分成函数更简单,更直观,更容易理解,更不易
出错。从而带来开发效率和维护效率的极大提高。
1 (共1页)
进入SanFrancisco版参与讨论
相关主题
联想的几个Purchase Programs, 自己比较价格,只有官网有cbOOP里面的Object其实是actor
Unix SAS programming vs PC SAS programmingWhy oop is bad?
Electronic Arts job openings on Redwood City, CAJS就应该杜绝OOP
小白问题:如何能短时间内提高C++能力?C 和 C++ 相比有什么优点?
和老印比,中国人推销自己确实不行呀 (转载)面向对象技术
比同同水饺更便宜好吃的手工水饺有没有?呼吁探亲父母包饺子,馄饨,包子卖。只会C,怎么办?
crawl space muddy or 积水的问题 (转载)人生第一个据信,发题目(Eze Castle)回报本版,另以贴为证,
FB招聘data/BI engineer contractor我来挖坑, 谈谈OOP/FP/SQL和人类思维习惯
相关话题的讨论汇总
话题: oriented话题: object话题: ori话题: oop