设计模式-六大规则SOLID

六大设计原则主要是指:

  • 单一职责原则(Single Responsibility Principle);
  • 开闭原则(Open Closed Principle);
  • 里氏替换原则(Liskov Substitution Principle);
  • 迪米特法则(Law of Demeter),又叫“最少知道法则”;
  • 接口隔离原则(Interface Segregation Principle);
  • 依赖倒置原则(Dependence Inversion Principle)。

把这 6 个原则的首字母(里氏替换原则和迪米特法则的首字母重复,只取一个)联合起来就是:SOLID(稳定的),其代表的含义也就是把这 6 个原则结合使用的好处:建立稳定、灵活、健壮的设计。

单一职责原则(Single Responsibility Principle )

  1. 原则思想:一个方法只负责一件事情。
  2. 描述:单一职责原则很简单,一个方法 一个类只负责一个职责,各个职责的程序改动,不影响其它程序。 这是常识,几乎所有程序员都会遵循这个原则。
  3. 优点:降低类和类的耦合,提高可读性,增加可维护性和可拓展性,降低可变性的风险。

开放封闭原则(Open Close Principle)

  1. 原则思想:尽量通过扩展软件实体来解决需求变化,而不是通过修改已有的代码来完成变化
  2. 描述:一个软件产品在生命周期内,都会发生变化,既然变化是一个既定的事实,我们就应该在设计的时候尽量适应这些变化,以提高项目的稳定性和灵活性。
  3. 优点:单一原则告诉我们,每个类都有自己负责的职责,里氏替换原则不能破坏继承关系的体系。

里氏代换原则(Liskov Substitution Principle)

  1. 原则思想:使用的基类可以在任何地方使用继承的子类,完美的替换基类。
  2. 大概意思是:子类可以扩展父类的功能,但不能改变父类原有的功能。子类可以实现父类的抽象方法,但不能覆盖父类的非抽象方法,子类中可以增加自己特有的方法。
  3. 优点:增加程序的健壮性,即使增加了子类,原有的子类还可以继续运行,互不影响。

接口隔离原则(Interface Segregation Principle)

  1. 这个原则的意思是:使用多个隔离的接口,比使用单个接口要好。还是一个降低类之间的耦合度的意思,从这儿我们看出,其实设计模式就是一个软件的设计思想,从大型软件架构出发,为了升级和维护方便。所以上文中多次出现:降低依赖,降低耦合。
  2. 例如:支付类的接口和订单类的接口,需要把这俩个类别的接口变成俩个隔离的接口

依赖倒转原则(Dependence Inversion Principle)

  1. 依赖倒置原则的核心思想是面向接口编程.
  2. 依赖倒转原则要求我们在程序代码中传递参数时或在关联关系中,尽量引用层次高的抽象层类,
  3. 这个是开放封闭原则的基础,具体内容是:对接口编程,依赖于抽象而不依赖于具体。

迪米特法则(最少知道原则)(Demeter Principle)

  1. 原则思想:一个对象应当对其他对象有尽可能少地了解,简称类间解耦
  2. 大概意思就是一个类尽量减少自己对其他对象的依赖,原则是低耦合,高内聚,只有使各个模块之间的耦合尽量的低,才能提高代码的复用率。
  3. 优点:低耦合,高内聚。

参考
https://zhuanlan.zhihu.com/p/110130347
https://www.cnblogs.com/zuoxiaolong/p/pattern1.html
https://blog.csdn.net/weixin_43122090/article/details/105462226

posted @ 2022-11-09 20:12  starmoon1900  阅读(95)  评论(0编辑  收藏  举报