设计模式分类
一 根据目的来分:
根据模式是用来完成什么工作来进行划分,可以分为创建型,结构型,行为型模式
- 创建型模式:用于描述“如何创建对象”,主要特点为将对象的创建与使用分离。在23种设计模式中有5种分别为单例,原型,工厂方法,抽象工厂,建造者模式为创建型模式。
- 结构型模式:用来描述如何将类或对象按某种布局组成更大的结构,在23种设计模式中提供了 代理,适配器,桥接,装饰,外观,享元,组合等7中种类结构型模式。
- 行为型模式:用于描述类或者对象之间如何相互协作共同完成单个对象都无法完成的任务,以及如何分配职责。在23种设计模式中提供了 模板方法,策略,命令,职责链,状态,观察者,中介者,迭代器,访问者,备忘录,解释器 11种设计模式。
二 根据作用范围来分
根据作用范围主要是分为在类上还是在对象上,可以分为类模式和对象模式。
- 类模式:用于处理类与子类的关系,这些关系通过继承来建立,是静态的。在编译时刻便确定下来了。在23种设计模式种 (类)适配器,模板方法,解释器属于该模式。
- 对象模式:用于处理对象间的关系,这些关系可以通过组合或聚合来实现,在运行时刻是可以变化的,更具动态性。除了类模式中的四种,其余的均为对象模式。
| 范围\目的 | 创建型模式 | 结构型模式 | 行为型