1.单一职责原则。
对于一个类应当仅有一个引起他变化的原因。 每一个类都有唯一的职责。
2.开闭原则。
软件中的对象(类,方法,模块)应当对于扩展是开放的,对于修改是封闭的。使用接口或者抽象,进行扩展,而对于相关的继承类修改不会影响到调用者。
3.里氏替换原则。
所有引用基类的地方必须能够透明的使用其子类对象。多态的体现,传递参数可以使用基类或接口进行拓展。
4.依赖倒置原则
(一)高层模块不应该依赖于低层模块,两者都应该依赖其抽象。
(二)抽象不应该依赖细节,
(三)细节应该依赖抽象
抽象:接口或抽象类。 细节:实现。
模块儿间的依赖通过抽象发生,实现类之间不应该发生直接的依赖,其依赖关系通过抽象类或接口产生。
5.接口隔离原则
接口间的依赖关系应当建立在最小的接口上。 接口的单一职责。
6.迪米特原则。
又称为最小知识原则。 一个对象应该对其他对象有最少的了解。高内聚,低耦合,尽量少的耦合其他类。