SRP 单一职责原则
就一个类而言,应该仅有一个引发它变化的缘由。
OCP 开放封闭原则
软件实体(类、模块、函数等)应该是能够扩展的,可是不能够修改。
LSP Liskov 替换原则
子类型必须可以替换他们的基本类型。
DIP 依赖倒置原则
抽象不该该依赖于细节。细节应该依赖于抽象。
ISP 接口隔离原则
不该该强迫客户依赖于他们不用的方法。接口属于客户,不属于他所在的类层次结构。
REP 重用发布等价原则
重用的粒度就是发布的粒度。
CCP 共用重用原则
一个包中的全部类应该是共同重用的。若是重用了包中的一个类,那么就要重用包中的全部类。相互之间没有紧密联系的类不该该在同一个包中。
共同封闭原则
一个包中的全部类对于同一类性质的变化应该是共同封闭的。一个变化若对一个包影响,则将对包中的全部类产生影响,而对其余包不形成任何影响。
ADP 无依赖原则
在包的依赖关系中不容许存在环。细节不该该被依赖。
稳定依赖原则
朝着稳定的方向进行依赖。
稳定抽象原则
一个包的抽象程度应该和其余稳定程度一致。