根据设计模式的目的来划分的话,设计模式可以分为三种:
- 创建型:创建型模式主要用于创建对象
- 结构性:结构型模式主要用于处理类或对象的组合
- 行为型:行为型模式主要用于描述类或对象怎样交互和怎样分配职责
根据范围划分可分为两种:
- 类模式:处理类和子类之间的关系,这些关系通过继承建立,在编译的时刻就被确定下来,是静态的
- 对象模式:处理对象之间的关系,这些关系在运行时刻变化,更具有动态性
23种设计模式具体划分如下图所示
设计模式的优点
设计模式是从许多优秀的软件系统中总结出来的成功的、能够实现可维护复用的设计方案,使用这些方案将避免我们做一些重复性的工作,而且可以设计出高质量的软件系统