零雨其蒙's Blog

做优秀的程序员
随笔 - 59, 文章 - 13, 评论 - 58, 引用 - 0
数据加载中……

零雨其蒙《UML和模式应用》学习笔记(四)

(零雨其蒙原创 转载请注明)
2007
3 7 日星期三

 

准则

   当有多个局部信息专家有待选择时,将职责赋予具有支配作用的信息专家,即持有主要信息的对象。这样有助于支持低耦合

 

 

命令 - 查询分离原则

CQS Command-Query Separation Principle )是针对方法的经典 OO 设计原则 [Meyer88] 。该原则指出,任何方法都可能使如下情况之一:

l         执行动作(更新、调整,……)的命令方法,这种方法通常具有改变对象状态等副作用,并且是 void 的(没有返回值)。

l         向调用者返回数据的查询,这种方法没有副作用,不会永久性的改变任何对象的状态。

关键是 ,一个方法不应该同时属于以上两种类型。

 

 

 

19 对可见性进行设计

 

对象之可见性

   为了使发送者对象能够向接受者对象发送消息,发送者必须具有接受这的可见性,即发送者必须拥有对接收者对象的某种引用或指针

 

 

实现对象 A 到对象 B 的可见性的四种方式

l         属性可见性—— B A 的属性

l         参数可见性—— B A 中方法的参数

l         局部可见性—— B A 中的方法的局部对象(不是参数)。

创建新的局部变量实例并将其分配给局部变量

将方法调用返回的对象分配给局部变量

l         全局可见性—— B 具有某种方式的全局可见性

 

 

自己的话: 终于把 GRASP 这两章看完了,真是费了不少脑筋,明天学习的内容我就不比较喜欢了,应该会很轻松。后续的第四部分将介绍 GRASP 其他模式和 GoF 设计模式,这两部分都是有所接触的,不是什么新知识,学起来应该相对轻松些。而第五部分,则又包含了大量章节来讲解大量细致的内容,这部书真的是值得一买精读数遍的好书啊!

 

posted on 2007-03-20 14:44 零雨其蒙 阅读(425) 评论(0)  编辑  收藏 所属分类: 学习笔记


只有注册用户登录后才能发表评论。


网站导航: