OO思想浅析

OOA:Object Oriented Analysis

OOD:Object Oriented Design

OOP:Object Oriented Programming

上面3个概念可以说是面向对象的3驾马车,那到底面向对象和传统的面向过程有什么区别和联系呢?

 

现在的程序员要求必须要有面向对象的编程思想,其实随着时代的发展,OO思想学校里面早就已经潜移默化到每个程序员的脑海中了,难道还会有人把一个基本的流程(像进销存)写在一个类的一个方法中吗?如果谁还是这样的编程习惯的话,尽早改行,投奔适合你想法的其他工种吧!

 

那么为什么要提倡面向对象呢?面向对象有什么好处呢?试想一下,一个复杂的系统,如果创造出各个关键点的关键人物,那整个结构布局是不是更加清晰?如果有什么改动调整的话,把关键人物送去进修下,就能适应整个复杂系统的自然发展,想想这个设计是不是相当完美呢?

 

话说回来,如果是面向过程呢?整个系统可能没有任何角色和担当人,有的只是一张纸上写得:步骤一,步骤二,步骤三。。。这么一个死气沉沉的系统,好像当年的闭关锁国一样,期望的就是一成不变、锢蔽自封。只要有什么改变,必将像当年改革开放那样轰轰烈烈!

 

其实,过程编程真的能抛得掉吗?面向对象编程是否需要过程辅助呢?举个例子:我叫张三帮我买杯咖啡,说完张三跑去咖啡店买了咖啡,跑回来给我。张三买咖啡整个过程缺不得,要不然我就永远喝不得咖啡。所以很显然,过程编程始终穿插在面向对象的编程思想当中,2者不可分割。

猜你喜欢

转载自plant12345.iteye.com/blog/2243604
oo