设计模式

设计模式是经过高度抽象化的在编程中可以被反复使用的代码设计经验的总结。

1、设计模式的7大原则

1.单一职责原则:一个类只有一个职责
2.开闭原则:对扩展开放,对修改封闭。
3.里氏代换原则:所有引用基类的地方必须能透明地使用其子类的对象。(子类可以实现父类的抽象方法,但是不能覆盖父类的非抽象方法;子类中可以增加自己特有的方法;当子类覆盖或实现父类的方法时,方法的前置条件(即方法的形参)要比父类方法的输入参数更宽松;当子类的方法实现父类的抽象方法时,方法的后置条件(即方法的返回值)要比父类更严格。如果子类不能完整地实现父类的方法,或者父类的一些方法在子类中已经发生畸变,则建议断开继承关系,采用依赖,聚合,组合等关系代替继承。)
4.依赖倒转原则:程序要依赖于抽象(抽象类和接口),而不依赖于具体的实现(实现类),避免需求变化导致过多的维护工作。
5.接口隔离原则:通过将不同的功能定义在不同的接口中实现接口的隔离。避免接口过于臃肿。
6.合成复用原则:通过一个新的对象中注入已有的对象以达到类的功能复用和扩展的目的。当要扩展类的功能时,优先考虑使用合成/聚合,而不是继承。
7.迪米特法则:一个对象对其他对象应该尽可能少的了解或依赖。降低类与类之间的耦合。

 

2、设计模式的分类

按照功能和使用场景分为三大类:创建型模型、结构性模型和行为型模型

 

设计模式 说明 包含的设计模式
创建型模式

提供了多种优雅创建对象的方法

工厂模式
抽象工厂模式
单例模式
建造者模式
原型模式
结构模式

通过类和接口之间的继承和

引用实现创建复杂结构对象的功能

适配器模式
桥接模式
过滤器模式
组合模式
装饰器模式
外观模式
享元模式
代理模式
行为模式

通过类之间不同的通信方式

实现不同的行为方式

责任链模式
命令模式
解释器模式
迭代器模式
中介者模式
备忘录模式
观察者模式
状态模式
策略模式
模板模式
访问者模式

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

设计模式_第1张图片

 

你可能感兴趣的:(设计模式)