面向对象之分析模式

王朝other·作者佚名  2006-07-24
窄屏简体版  字體: |||超大  

(同步自http://www.blogjava.net/AndersLin/archive/2006/05/31/49142.html)

面向对象,嗯,是个老话题了。

书店了关于面向对象对象的多不盛数,面向对象的框架一个又一个,更有大名鼑鼑的设计模式。。。

在看了无数本这样的书,并学习了无数的框架,同时在工作中广泛应用了的设计模式及其变种;

熟练的使用分层框架,而不是一个jsp包打天下;

熟练的使用抽象和多态,而不是难看的if...else;

小心翼翼的贯彻各个面向对象的原则,并写着大量的unittest,

开始沾沾自喜的也以为自己真的懂了面向对象。

但是,(如果没有但是。。。)随着工作越久发现自己的认识其实很浅。

自己所接触到,或者说是自己所体会,思考,以及应用的其实只是面向对象的实现技术部分,

而面向对象分析技术部分才刚刚开始学习。

Booch在其《面向对象分析与设计》一书中分为面向对象编程,面向对象分析,面向对象设计。

不过事实上,正如马丁同学所说的,关于分析和设计的界限很模糊,我愿意按自己的分类的理解:

1. 实现技术,即面向对象设计,其代表就是《设计模式》,以及《企业应用架构模式》。

至于面向对象编程只是面向对象实现的支撑——因为一个具体的语言提供能力会导致同一个设计有着不同表现,如同样的设计模式用java,c++和c#, 甚至smalltalk,python等动态语言下的实现可能不一样。关于语言,在javaeye上有过热烈讨论http://forum.javaeye.com/viewtopic.php?t=17677

2. 分析技术,即面向对象分析,其代表就是《分析模式》(感谢马丁同学的劳动)。

目前的资料和讨论,相对于实现技术来说太少了。即便如此,现有的一些资料也不是很容易理解,如《分析模式》我第一次阅读是在2003年夏天,受限于经验,只理解了chapter2,而其它的分析模式章节几乎是似是而非。在这2006年的春夏之交当我重新翻开《分析模式》,有了更多的体会。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航