OOD沉思录 之 面向动作与面向对象2--避免泛滥成灾的类
来源:互联网 发布:什么软件可以拍正装 编辑:程序博客网 时间:2024/04/27 18:35
3.7 从设计中取出不需要的类
只有Get/Set方法的类不算是一个必要的类,Get/Set方法也不算是有意义的行为。这种类降级为属性更加合适。
3.8 去除系统外部的类
如果一个类只调用系统领域的方法,而系统没有向该类调用,则可以认为这个类并不属于系统。可能只是系统的使用者,我们没必要去为此建模。
创建此类时应该问一问“这个类在系统内做什么事情?”
3.9 不要把操作变成类。
“我需要一个做。。。事情的类”,如果有这种想法,请先认真斟酌。这个类真的代表了某个关键抽象概念吗?
名字是动词或者派生自动词的类很值得怀疑,应该考虑这个类可能只是一个尚待发掘的抽象概念的一个行为。
但是Command模式是例外,因为它本来就是用来封装操作的。
3.10 在分析阶段我们经常引入代理类,在设计阶段,我们常会发现很多代理类是没有用的,应当去除。
面向对象的奶牛生产面向对象的牛奶,那么是奶牛向牛奶发送"uncow yourself"?还是牛奶向奶牛发送"unmilk yourself"?
我们可能面对此尴尬时想到应该有一个奶农的代理类,负责消息控制,如果真的如此,那奶牛和牛奶还有什么有意义的行为了?
我个人任务这个问题比较有两面性,不完全赞同,也不是到处都合适。在MVC架构中经常会看到这种情况.
- OOD沉思录 之 面向动作与面向对象2--避免泛滥成灾的类
- OOD沉思录 之 面向动作与面向对象1--避免全能类
- 沉思录之面向对象随想
- OOD沉思录 之 类和对象的关系--包含关系2
- OOD沉思录 之 类和对象的关系--使用关系
- OOD沉思录 之 类和对象的关系--使用关系原则
- OOD沉思录 之 类和对象的关系--包含关系1
- OOD沉思录 之 类和对象的关系--包含关系3
- OOD沉思录 之 类和对象的关系--包含关系4
- 《C++沉思录》——面向对象
- OOD沉思录 之 导引
- OOD沉思录 之 继承
- [OOAD]面向对象分析与设计之OOD学习总结
- 《c++沉思录》--一个面向对象程序范例
- 《C++沉思录》-第八章- 一个面向对象程序范例
- C++沉思录 第八章 面向对象程序范例
- C++沉思录第八章算数表达式树的面向对象问题的分析
- 面向对象设计(OOD)方法与步骤
- D3D新兵的第一篇
- iPhone/iPad开发札记 2012/03/15 总结与思考音频问题
- 如何运行opengl红宝书中的源码,傻瓜版
- 精品课程
- 黑马程序员_关于线程对象和目标对象的问题
- OOD沉思录 之 面向动作与面向对象2--避免泛滥成灾的类
- 珠联璧合共享,LatexinWord, 在Word里用Latex编辑公式
- 对象
- VB总结
- LatexInWord快捷方式,配置秘诀,使用技巧,
- 191. Greedy folks have long arms. 心贪手长
- MFC创建菜单
- myeclipse10 用破解补丁或注册机不能成功破解原因解析
- 有关中文的正则表达式