设计模式回顾---六大原则

记忆方法SOLID+迪米特原则

面向对象的六大原则

  • 单一职责原则(Single Responsibility Principle)——SRP

单一职责原则很好理解,就是一个类尽量只做一件事

  • 开闭原则(Open Close Principle)——OCP

开闭原则的定义是软件中的对象(类,模块,函数等)应该对于扩展是开放的,但是对于修改是关闭的。
即当需求发生改变的时候,我们需要对代码进行修改,这个时候我们应该尽量去扩展原来的代码,而不是去修改原来的代码,因为这样可能会引起更多的问题。

  • 里式替换原则(Liskov Substitution Principle)——LSP

里式替换原则简单说来就是:所有引用基类的地方必须能够透明地使用其子类的对象。
里氏替换原则通俗的去讲就是:子类可以去扩展父类的功能,但是不能改变父类原有的功能

里氏替换和开闭原则是比较相近的,通过里式替换来达到对扩展开放,对修改关闭的效果

  • 依赖倒置原则(Dependence Inversion Principle)——DIP

这个原则从名字根本看不出什么意思。简单的说就是尽量面向接口编程.

依赖倒置原则在java语言中的表现就是:模块间的依赖通过抽象发生,实现类之间不发生直接的依赖关系,其依赖关系是通过接口或抽象类产生的

  • 接口隔离原则(InterfacesSergregation Principle)——ISP

接口隔离原则的定义是:客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。接口最小化,过于臃肿的接口依据功能,可以将其拆分为多个接口。

以上这些设计思想用英文的第一个字母可以组成SOLID ,满足这个5个原则的程序也被称为满足了SOLID准则。

  • 迪米特原则(Law of Demeter)——LOD

迪米特原则也被称为最小知识原则,他的定义:一个对象应该对其他对象保持最小的了解
因为类与类之间的关系越密切,耦合度越大,当一个类发生改变时,对另一个类的影响也越大,所以这也是我们提倡的软件编程的总的原则:低耦合,高内聚

猜你喜欢

转载自blog.csdn.net/why1092576787/article/details/114847782