文章目录
  1. 1. 单一职责原则
  2. 2. 开放封闭原则
  3. 3. 里氏替换原则
  4. 4. 接口分离原则
  5. 5. 依赖倒置原则

SOLID原则是为了写出可复用、可扩展、高内聚、低耦合的代码。

  • 单一职责原则(The Single Responsibility Principle,SRP)
  • 开放关闭原则(The Open Closed Principle,OCP)
  • 里氏替换原则(The Liskov Substitution Principle,LSP)
  • 接口分离原则(The Interface Segregation Principle,ISP)
  • 依赖倒置原则(The Dependency Inversion Principle,DIP)

单一职责原则

一个类只做一种类型责任,当这个类需要承当其他类型的责任的时候,就需要分解这个类。不过在现实开发中,这个原则是最不可能遵守的,因为每个人对一个类的哪些功能算是同一类型的职责判断都不相同。

开放封闭原则

软件实体应该是可扩展,而不可修改的。也就是说,你写完一个类,要想添加功能,不能修改原有类,而是想办法扩展该类。有多种设计模式可以达到这一要求。

里氏替换原则

当一个子类的实例应该能够替换任何其超类的实例时,它们之间才具有is-a关系。也就是说接口或父类出现的地方,实现接口的类或子类可以代入,这主要依赖于多态和继承。

接口分离原则

不能强迫用户去依赖那些他们不使用的接口。换句话说,使用多个专门的接口比使用单一的总接口总要好。 不要提供一个大的接口包括所有功能,应该根据功能把这些接口分割,减少依赖。

依赖倒置原则

高层模块不应该依赖于低层模块,二者都应该依赖于抽象;
抽象不应该依赖于细节,细节应该依赖于抽象。

文章目录
  1. 1. 单一职责原则
  2. 2. 开放封闭原则
  3. 3. 里氏替换原则
  4. 4. 接口分离原则
  5. 5. 依赖倒置原则