系列文章目录
第十章:面向可维护的构造技术
文章目录
一、软件维护与演化
软件维护:修复错误,改善性能。
软件演化:对软件进行持续的更新。
二、可维护性的指标
- 圈复杂度:衡量代码结构的复杂度。
- 代码行数
- 可维护性指数
- 继承的层次数
- 类之间的耦合度
- 单元测试的覆盖度
三、模块化编程和模块性原则
1. 评估模块化的五个标准
2. 模块设计的五个规则
3. 耦合和内聚
耦合:是模块之间依赖性的度量。
两个模块耦合的程度取决于:
- 模块之间的接口数量
- 各个接口的复杂度
内聚:是衡量模块的功能或职责之间的关联程度
最好的设计在模块内具有高内聚性(也称强内聚性),模块之间具有低耦合性(也称弱耦合性)
四、SOLID
1. 单一责任原则
不该有多于一个原因让你的ADT发生变化,否则就拆分开
一个类一个责任
2. 开放/封闭原则
3. LSP替换原则
在上一章中已经做了详细的介绍
4. 接口隔离原则
不能强迫客户端依赖于它们不需要的接口:只提供必需的接口
5.依赖转置原则
抽象的模块不应该依赖于具体的模块
具体应该依赖于抽象
所以我们应该多使用接口和抽象类
五、语法驱动的构造
详细看下一章