UML-GRASP前5种模式

1、创建者(Creator)

问题:谁创建类A?
答:来自领域模型、设计模型(交互图、类图)

2、信息专家

问题:给对象分配职责的基本原则是什么?
回答:谁具有完成该职责的信息,谁负责该职责。

因为根据图17-5知道,board汇集了square的信息。即board对square门清。

3、低耦合

为啥专家把获取Square的职责分配给了Board?而不是Dog?

除了board对square门清以外,就是低耦合。那什么叫低耦合呢?就是类之间的关联要小些,即当变化功能时,不要改变过多的类。

问题:如何减少因变化产生的影响?
方案:分配职责,降低耦合度(不必要的耦合去掉)。

4、控制器

就是MVC中的C。在V(视图层)和M(领域层)之间搭建桥梁。

5、高内聚

耦合是类之间的,内聚是类内部的。

A:一个类内部有100个方法2000行代码

B:一个类内部有10个方法200行代码

以上那个好?当然是B好,因为A基本把所有事都做了,难维护。A叫低内聚,B叫高内聚。

 

posted @ 2019-06-28 11:57  遥远2  阅读(317)  评论(0编辑  收藏  举报