• 单一职责原则(Single Responsibility Principle): 就一个类而言,应该只有一个引起它变化的原因。
  • 开闭原则(Open-Closed Principle): 一个软件实体应当对扩展开放,对修改关闭。
  • 里氏替换原则(Liskov Substitution Principle): 所有引用基类(父类)的地方必须能透明地使用其子类的对象。
  • 依赖倒置原则(Dependency Inversion Principle): 针对接口编程,而不是针对实现编程。
  • 接口隔离原则(Interface Segregation Principle): 使用多个专门的接口,而不使用单一的总接口,即客户端不应该依赖那些它不需要的接口。
  • 迪米特法则(Law of Demeter): 一个软件实体应当尽可能少地与其他实体发生相互作用。