作者H45 (!H45)
看板OOAD
标题[资料] 物件导向的观念
时间Tue Jul 24 22:39:18 2007
连结如下:
物件导向基础观
http://www.ithome.com.tw/plog/index.php?op=Default&postCategoryId=510&
blogId=296
不要从程式语言学习「物件导向」!
http://www.kenming.idv.tw/index.php?title=ac_eb_af_cu_af_eo_eu_ascci_a_c_
carpad_a&more=1&c=1&tb=1&pb=1
似乎是同一个作者写的,参考其首页:
http://www.kenming.idv.tw/
http://www.ithome.com.tw/plog/index.php?blogId=296
接下来是我写的:
软体开始发展先从分析需求做起
把文件中数百数千个名词和动词都转换成物件可真是一个恶梦
但是物件导向可以帮助我们把一个大系统切割成许多互相独立的小系统
尽管彼此之间有些相依关系存在,总是比一个大系统来得容易思考。
每次分析一个小系统的时候,并不需要把其他的系统也一起纳入考虑
所有的小系统最多只会依赖於介面,而非其他的子系统
这麽做的好处是,达成了抽象化的目的:
只考虑真正重要的部分,而忽略其他不重要的地方
更能够集中心力在解决重要问题上面
把子系统复杂的底层给隐藏起来,保护底层所实作的功能
这样封装良好的子系统有助於其他系统的发展
因为这个子系统受到保护,所以不会因为其他系统对本系统错误的存取
而造成本系统运作的失常
(有言:「明明是别人的系统对我乱搞,怎麽会是我的系统的错?」)
不只如此,物件以继承的方式可以由小而简单的模组延伸到大而复杂的模组
根据开关守则,开发者可以扩充任何物件的功能,但是无法修改物件本身的属性
而其他的模组要呼叫「这些同类的模组」,也可以藉由多型来达成
更改一个系统中任何一个模组,只要解决依存关系即可
所以不需要更动其他不相关的模组,当然也不需要更动整个系统架构。
参考连结:
http://www.felixgers.de/teaching/oop/oop_intro.html
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 60.248.127.91
※ 编辑: H45 来自: 60.248.127.91 (07/24 22:39)
1F:推 godfat:我倒觉得不从 oop 出发只会迷失而已 07/24 23:03
2F:推 H45:不如这样说:不从 oop 出发也没有其他更好的出发点 07/24 23:14
3F:→ godfat:你贴的文章在屏弃 oop 耶 @@ 07/24 23:18
4F:→ H45:我想他说的是利用 OOP 来 "验证" 物件导向设计的想法 07/24 23:23
5F:→ H45:所以没有 OOP 的话,物件导向设计就形同虚设 07/24 23:23