单一职责原则
一个类只负责一项职责。
接口隔离原则
一个类对另一个类的依赖应该建立在最小接口上。
依赖倒转原则
高层模块不应该依赖低层模块。
抽象不应该依赖细节,细节应该依赖抽象。
中心思想是面向接口编程。
抽象是指接口或者抽象类,细节就是指具体的实现类。
使用接口或抽象类时制定好规范,不涉及具体操作,把细节交给实现类完成。
里氏替换原则
子类尽量不要重写父类的方法。
继承让两个类的耦合性增强了。
在适当情况下,可以通过聚合,组合来解决问题。
开闭原则
对扩展开放,对修改关闭。
软件变化时,通过扩展来实现变化,而不是修改已有的代码来实现变化。
迪米特法则
一个类对自己依赖的类知道的越少越好。
合成复用原则
尽量使用合成,聚合的方式,而不是使用继承。
总结
设计模式是为了让程序具有更好的:
代码重用性(相同功能代码,不用多次写)
可读性(易于其他程序员理解)
可扩展性(增加新的功能时,非常方便)
可靠性(增加新的功能时,对原来的功能没有影响)
高内聚,低耦合的特性。