聊聊内聚性

HD
大家遇没遇到过这种情况,

有一个类,里面有ABCD四个属性,同时有方法1设置AC的值,方法2设置D的值,方法3计算B的值,通过ACD三个属性。这种代码感觉维护性不高,有什么好的处理方式吗,感觉这堆属性跟一堆全局变量没啥区别

STST

这是内聚性低 的特点

HD 

但是我的属性都内聚到一个类了啊

STST

呵呵,这不是内聚的意思

HD 

恩,能给稍微讲讲吗

STST

用你这个做例子的话

HD 

STST

100%内聚意味着:
方法1必须操作ABCD四个属性
方法2必须操作ABCD四个属性
......
方法N必须操作ABCD四个属性

这是最理想的内聚状态

HD

但一个方法只改变一个属性的情况太多了。。可以避免吗

STST

象你这种情况,因该是
这是一个类
这是一个类
这是一个类

HD

B值自己一个类?这好像。。。

STST

当然不那么绝对了,需要平衡艺术了

在可能的情况下,尽量提高内聚性

posted @ 2015-10-23 23:03  赛提斯特  阅读(195)  评论(0编辑  收藏  举报