高内聚,低耦合与SOLID原则

软件开发一直都吼着,要开发高内聚,低耦合的代码。


先谈谈,什么是高内聚?内聚性,又称块内联系。指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。用大白话说,高内聚就是模块的独立性强,功能明确、单一,一个模块只做一件事情。

低耦合呢?耦合性也叫块间联系。指软件系统结构中各模块间相互联系紧密程度的一种度量。耦合性就越强,模块之间越独立则越差,模块间耦合的高低取决于模块间接口的复杂性,调用的方式以及传递的信息。简单说耦合性越高,代码越难读,难改,牵一发动全身。电脑USB口经常被作为一个例子,来说明低耦合性。可以插入USB口工作的设备和电脑都是低耦合性,电脑不依赖于外部任何外部USB设备,只要你符合USB规范,插上就可以用。USB规范就像一个抽象类,所有外部设备必须实现抽象类,确保能被正确调用。


看看SOLID 五大原则与高内聚,低耦合的关系:


高内聚  -   S 单一职责原则, I 接口隔离原则 

低耦合 -    O 开闭原则, D 依赖倒置原则, L 里氏替换原则




你可能感兴趣的:(SOLID设计原则)