如何让我们设计的框架,在后期更容易维护和修改,本章给出来了一些参考思路。
第十章 柔性设计
为了使项目能够跟随着开发工作的进行加速前进,而不会由于它自己的老化停滞不前,设计必须要让人们乐于使用,而且易于做出修改。这就是柔性设计。
开发人员扮演着两个角色,设计出的技术框架必须为为这两个角色服务:
- 将领域对象组织成应用程序代码,即可落地
- 设计对修改代码的开发人员友好,即易修改
做出这样的设计,没有具体的公式,但是有一些原则可供参考,咱们一一进行介绍。
10.1 INTENTION-REVEALING INTERAFCES
上边三个单词字面意思分别是意图 解释 接口,书上的翻译是“释意接口”。名称看着很高大上,其实意思很简单,就是“我们在定义变量、方法名称、类名称时,要描述它们的效果和目的,做到见闻知意”。只表明最终效果,无需表露内部的实现细节"。
10.2 SIDE-EFFECT-FREE FUNCTION
SIDE-EFFECT-FREE 是无副作用的意思,题目整体翻译成”无副作用方法“。这里先解释两个概念:副作用和函数。
副作用:”副作用“暗示”意外的结果“。任何对系统状态产生的影响都叫副作用。
函数:返回结果而不产生副作用的操作称为函数。这个概念有点绕,和数学上对函数的定义有所不同。
我们可以宽泛地把操作分为两个大的类别: