03.复杂性封装

复杂性封装

复杂性封装(Encapsulate),这样程序员可以不用一次面对系统全部的复杂性,这个也被称为模块设计。在模块设计,系统被划分为各个模块,例如面向对象设计语言中的类。这些模块被设计为彼此间相对独立,程序员在开发一个模块的时候,不需要考虑其他模块的实现细节。

复杂性封装,主要是即自上而下的结构化分解与自下而上的面向对象分析,螺旋式的构建我们的应用系统。这是一个动态的过程,两个步骤可以交替进行、也可以同时进行。这两个步骤是相辅相成的,上面的分析可以帮助我们更好的理清模型之间的关系,而下面的模型表达可以提升我们代码的复用度和业务语义表达能力。其过程如下图所示:

自上而下的结构化分解与自下而上的面向对象分析