在软件设计阶段,把一个模块分为更小的模块时,设计合理,使得系统结构健壮,以便适应用户的需求变化。
结构稳定性
就是对扩展开放,而对修改封闭。其是所有面向对象原则的核心。开放封闭原则是实现易于扩展复用 、 封装实现细节 、 降低耦合度目标的最直接的体现。
一个类只负责一项职责。针对一个类,其承担的职责越多,被复用的可能性就越小。如果类承担的职责很多,其中一项职责发生变化,就可能会影响其他职责的处理。
使用对象的组合/聚合,而不是继承来达到复用的目的。组合/聚合和继承是实现代码复用的两种基本途径。
倒转原则就是把使高层次的模块依赖于低层次的模块,抽象层次依赖于具体层次这个错误的依赖关系倒转过来。
(1)客户需要什么样的接口,就提供什么样的接口,不需要的就删除掉;(2)类之间的依赖关系应建立在最小的接口上。
所有基类出现的地方,都可以使用子类进行替换,子类可以扩展父类的功能,但不能改变父类原有的功能。
一个类对自己所依赖的类知道的越少越好,对于被依赖的类,不论其实现逻辑如何,都将这些逻辑封装在自己的范围内。
遵循DRY(Don't repeat yourself)原则,减少软件中的重复代码
当软件需要升级增加新的功能,能够在现有的系统架构上方便创建新的模块,而不需要更改软件现有的结构,也不会影响已经存在的模块
当用户需求发生变化时,只需要修改局部的模块中的少量的代码即可
在软件设计阶段,把一个模块分为更小的模块时,设计合理,使得系统结构健壮,以便适应用户的需求变化。
若干模块经过组合形成大系统,模块的可组合性提高软件的可重用性和可维护性,并简化软件开发过程。
内聚,强调一个系模块内的功能联系,每个模块只完成特定的功能,不同模块之间不会有功能的重叠。
耦合,强调的是多个模块之间的关系,模块之间相互独立,修改某一个模块,不会影响到其他的模块。