复杂性的本质
本书是关于如何设计软件系统以尽量减少其复杂性。第一步是要了解敌人。究竟什么是 "复杂性"?如何判断一个系统是否是复杂得没有必要?是什么导致系统变得复杂?本章将从高层次上解决这些问题;随后的章节将告诉你如何在较低层次上,从具体的结构特征上识别复杂性。
识别复杂性的能力是一项重要的设计技能。它可以让你在投入大量精力之前发现问题,并让你在各种备选方案中做出正确的选择。判断一个设计是否简单比创造一个简单的设计更容易,但是一旦你能够认识到一个系统过于复杂,你就可以用这种能力来指导你的设计理念,使之走向简单。如果一个设计看起来很复杂,可以尝试不同的方法,看看这样是否更简单。随着时间的推移,你会注意到某些技术往往能够产生更简单的设计,而其他技术则使设计变得复杂。这将使你能够更快地作出更简单的设计。
本章还列出了一些基本假设,为本书的其余部分奠定了基础。后面的章节将本章的材料作为给定的内容,并用它来证明各种改进和结论的合理性。
Last updated