1.单一职责原则
(高内聚,低耦合)一个类只负责一个功能领域中的相应职责(或者可以定义为:就一个类而言,应该只有一个引起它变化的原因)。
在软件系统中,一个类(大到模块。小到方法)承担的责任越多,它被复用的可能性就越小,而且耦合度也越高。
2.接口隔离原则
一个模块不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。
使用多个接口,而不是只使用一个接口编程,即将功能划分到多个接口上去。使用多个接口,可以降低各个功能模块间的耦合。
3.迪米特原则
迪米特原则也叫 最少知识原则 ,即一个对象应该对其它对象有最少的了解,也就是说一个类要对自己需要耦合或者调用的类知道的最少。
4.里式替换原则
只要有父类出现的地方子类就可以出现,且替换成子类也不会出现任何错误或者异常。
5.开闭原则
一个软件实体应当对扩展开放,对修改关闭。即软件实体应尽量在不修改原有代码的情况下进行扩展。
对于一个类,我们在设计的时候就应该考虑其的复用和扩展,而使其尽量不会被修改。
(抽象类是实现开闭原则的关键)
(在开闭原则的定义中,软件实体可以指一个软件模块、一个由多个类组成的局部结构或一个独立的类。)
6.依赖倒置原则
面向接口编程,而不是实现类。
1>模块化间的依赖关系通过接口和抽象类产生,实现类之间不直接发生依赖关系。
2>接口和抽象类不依赖于实现类。
3>实现类依赖接口或者抽象类。