1.单一职责原则(Single Responsibility Principle - SRP)
单一职责原则就是:开发人员经常说的“高内聚,低耦合”。简单来说,每个类应该只有一个职责,对外只能提供一种功能。
2.开闭原则(Open for Extension , Close for Extension - OCP)
开闭原则就是:对类的改动是通过增加代码进行的(扩展开放),而不是改动现有的代码(修改关闭)。
3.里氏替换原则(Liskov Substitution Principle - LSP)
在任何父类出现的地方都可以用它的子类来替换,关注的是怎样良好地使用继承(不要滥用继承)。
4.依赖注入原则(Dependence Inversion Principle - DIP)
所有的类如果使用或依赖于其他的类,都应该依赖于这些其他类的抽象类,而不是具体实现类。因此,要针对接口编程,而不是针对实现编程。
5.接口分离原则(Interface Segregation Principle - ISP)
一个接口应该只提供一种对外功能,不应该把所有的操作都封装到一个接口当中。
6.迪米特原则(Law of Demeter - LOD)
一个对象应当对其他对象尽可能少的了解,降低各个对象之间的耦合,在模块之间只通过接口来通信,提高系统的可维护性。