聊聊内聚性
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
当然不那么绝对了,需要平衡艺术了
在可能的情况下,尽量提高内聚性
浮沙之上勿筑高台