设计模式(二)“开-闭”原则(OCP-----Open-Closed Principle)

  1. 什么是“开-闭”原则?

“开-闭”原则讲的是:一个软件实体应当对扩展开放,对修改关闭。这个原则说的是,在设计一个模块的时候,应当在没必要修改源代码的状况下改变这个模块的行为。spa

知足“开-闭”原则的设计能够给一个软件系统两个无可比拟的优越性:设计

  • 经过扩展已有的软件系统,能够提供新的行为,以知足对软件的新需求,使变化中的软件系统有必定的适应性和灵活性。
  • 已有的软件模块,特别是最重要的抽象层模块不能再修改,这就使变化中的软件系统有必定的稳定性和延续性。

    2.对可变性的封装原则对象

  • 一种可变性不该当散落在代码的不少角落中,而应当被封装到一个对象里。继承应当被看作是封装变化的方法,而不该当被认为是从通常的对象生成特殊的对象的方法。
  • 一种可变性不该当与另外一种可变性混合在一块儿。

    3.设计原则继承

  • 里氏代换原则

任何父类能够出现的地方,子类必定能够出现。里氏代换原则是“开-闭”原则的补充,实现“开-闭”原则的关键步骤就是抽象化。父类与子类的继承关系就是抽象化的具体体现,因此里氏代换原则是对实现抽象化的具体步骤的规范。接口

  • 依赖倒置原则

要依赖于抽象,不要依赖于实现。扩展

  • 合成/聚合复用原则

要尽可能使用合成/聚合,而不是继承关系达到复用的目的。软件

  • 迪米特法则

一个软件实体应当与尽量少的其余实体发生相互做用。方法

  • 接口隔离原则

应当为客户端提供尽量小的单独的接口,而不要提供大的总接口。客户端

相关文章
相关标签/搜索