在完成了第一部分《敏捷开发》部分的阅读后,第七章开始介绍敏捷设计。
在本章。作者主要介绍了敏捷设计的一些基本概念。
软件正在腐化的标志:
- 僵化性:一个改动会引起很多的改动,这个设计就是僵化的
- 脆弱性:一个改动会引起很多的问题,而这些问题与修改的地方没有概念上的关联
- 牢固性:包含了对其他系统有用的部分
- 粘滞性:包括软件和环境的粘滞性
- 不必要的复杂性:
- 不必要的重复:其实感觉第五点和第六点就是一个需要平衡的矛盾体。我们有时候需要去做抽象,以减少重复,增加软件的灵活性,但是过度的抽象又会造成不必要的复杂性。
- 晦涩性:就是指代码晦涩难懂,在刚开始对代码非常熟悉的时候很好理解,但是回过头来或者别人阅读的时候会很难理解代码的意思
敏捷设计是一个过程,是一个持续应用原则、模式以及实践来改进软件的结构和可读性的过程。
在之后的几章将对敏捷设计的几个原则进行介绍:单一职责原则(SRP),开放封闭原则(OCP),Liskov替换原则(LSP),依赖倒置原则(DIP),接口隔离原则(ISP)