设计模式原则

1.单一职责原则(SRP)

  英文:Single Responsibility Principle,简称:SRP。
  单一职责原则是最简单的面向对象设计原则,它用于控制类的粒度大小。
  单一职责原则:一个类只负责单个职责,即就一个类而言,应只有一个让它变化的原因。
  注:一个类承担的职责越多,可被复用的可能性越小。
  优点:
    1.单一职责原则可以降低类的复杂度;
    2.提高代码的可读性,提高系统可维护性;
    3.实现高内聚、低耦合代码。

2.开放-关闭原则(OCP)

  英文:Open-Closed Principle,简称:OCP。
  开闭原则是面向对象的可复用设计的第一块基石,它是最重要的面向对象设计原则。
  开放-关闭原则:表示一个如软件实体(类、模块、函数等等)应当对扩展开发,对修改关闭,即软件实体可以在不修改原有的代码的前提下进行扩展。
  注:抽象化是开闭原则的关键。
  优点:
    1.OCP使代码具有良好的可扩展性、可维护性;
    2.因为对扩展开发,因此软件有着很强的适应性和灵活性;
    3.因为对修改关闭,因此软件有着很强的稳定性和持久性。

3.里氏替换原则(LSP)

  英文:Liskov Substitution Principle,简称:LSP。
  里氏替换原则:任何父类出现的地方都可以用子类代替,即在软件中将一个基类对象替换成它的子类对象,程序将不会产生任何错误和异常,反之不成立。
  注:里氏替换原则是实现开闭原则的重要方式之一。
  在程序中尽量使用基类类型来对对象进行定义,而在运行时再确定其子类类型,用子类对象来替换父类对象。

4.依赖倒置原则(DIP)

  英文:Dependence Inversion Principle,简称:DIP。
  依赖倒置原则:抽象不应依赖细节,细节应依赖抽象,即在程序代码中传递参数时或在关联关系中,尽量引用高层次的抽象层类。
  核心:面向接口编程,依赖于抽象,不依赖于具体。
  开闭原则是目标,里氏替换原则是基础,依赖倒置原则是手段。相辅相成,相互补充。

5.接口隔离原则(ISP)

  英文:Interface Segregation Principle,简称:ISP。
  接口隔离原则:每个接口不应该存在子类用不到却必须实现的方法,否则接口应拆为多个。
  注:在使用接口隔离原则时,我们需要注意控制接口的粒度,接口不能太小,如果接口太小会导致系统中接口泛滥,不利于维护;接口不能太大,太大的接口将违背接口隔离原则,灵活性较差,使用起来很不方便。

6.迪米特法则(LOD)

  英文:Law Of Demeter,简称:LOD;又称为最少知道原则(LeastKnowledge Principle,LKP)。
  迪米特法则:一个类对于依赖的类知道的越少越好,即只与直接朋友通信。
  注:我们称出现在成员变量、方法参数、方法返回值的类称为直接朋友,局部变量、临时变量则不是直接朋友。

posted @ 2022-01-09 17:33  masy  阅读(45)  评论(0编辑  收藏  举报