1.根据目的准则分类
就是说,指定的模式用来完成什么样的工作。可分为三种:
(1) Creational (创建型):与对象创建有关。
(2) Structural (结构型):处理类或对象的组合。
(3) Behavioral (行为型):描述类或对象如何交互及如何分配职责。
2.根据范围准则分类
即指定的模式用于类还是用于对象,分为两种:
(1) 类模式:用于处理类和子类之间的关系,这些关系通过继承建立,是静态的,在编译时就已经确定下来了。因为从某种意义上说,几乎所有模式都是使用继承机制,因此此处的“类模式”是指集中处理类间关系的模式,只有很少部分模式属于此类。
(2) 对象模式:用于处理对象间的关系,这些关系具有动态性,在运行期间是可以变化的。
范围\目的 |
创建型(Creational) |
结构型(Structural) |
行为型(Behavioural) |
类 |
简单工厂模式(Simple Factory) |
适配器模式(Adapter_class) |
解释器模式(Interpreter) |
|
工厂方法模式(Factory Method) |
|
模板方法模式(Template method) |
对象 |
抽象工厂模式(Abstract Factory) |
适配器模式(Adapter _object) |
职责链模式(Chain of Responsibility) |
|
创建者模式(Builder) |
桥模式(Bridge) |
命令模式(Command) |
|
原型模式(Prototype) |
组合模式(Composite) |
迭代器模式(Iterator) |
|
单例模式(Singleton) |
装饰模式(Decorator) |
调停者模式(Mediator) |
|
|
外观模式(Facade) |
备忘录模式(Memento) |
|
|
享元模式(Flyweight) |
观察者模式(Observer) |
|
|
代理模式(Proxy) |
状态模式(State) |
|
|
|
策略模式(Strategy) |
|
|
|
访问者模式(Visitor) |
创建型模式是创建对象而不是直接实例化对象,这会使程序在判断给定情况下创建哪一个对象时更为灵活。
结构型模式可以将一组对象组合成更大的结构,例如复杂的用户界面或报表数据。
行为型模式定义系统内对像间的通信,以及复杂程序中的流程控制。
这篇博客是自己对于别人的总结的一个集合,从内容上没有什么新颖的东西,从整体的结构来讲非常的重要!