一.开闭原则
对扩展开放,对修改封闭。
新增功能,不要更改原来同等级类似的功能
二.单一职责原则
如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化会削弱或抑制这个类完成其他职责的能力,这个耦合会导致脆弱的设计。
?类膨胀
三.里氏替换原则
所有引用基类(父类)的地方必须能透明地使用其子类的对象
四.依赖反转原则
代码要依赖于抽象的类,而不要依赖于具体的类;要针对接口或抽象类编程,而不是针对具体类编程
五.迪米特法则
最少知识原则(Least Knowledge Principle LKP),就是说一个对象应当对其他对象有尽可能少的了解,不和陌生人说话。