首先,在谈凝聚耦合之前,我们必须先谈概念“模块”。 对于一个系统,负责不同功能的部分称为一个模块。
高凝聚:模块内部指各组件的关系。 例如,系统中存在a、b这2个模块,虽然进行对话,但是如果修正a模块,不影响b模块的动作的话,可以认为a模块已经充分凝聚了
低偶联:指模块间的关系。 a模块和b模块存在依存关系,如果即使a模块改变,b模块也正常工作,则认为a和b是低耦合。
举个反例:
在一个项目中成功调用了20个函数,其中一个函数必须修改,其他19个函数也必须修改。 这就是高耦合! 独立性太差了!
目前的软件结构设计要求“高凝聚、低耦合”,以保证软件的高质量!