1.概念
设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。项目中合理地运用设计模式可以完美地解决很多问题,每种模式在现实中都有相应的原理来与之对应,每种模式都描述了一个在我们周围不断重复发生的问题,以及该问题的核心解决方案,这也是设计模式能被广泛应用的原因。
2.分类
2.1 创建型模式
用于描述如何创建对象,将对象创建和对象使用解耦。
2.2 结构型模式
把类或对象结合在一起形成一个更大的结构。
2.3 行为型模式
类和对象如何交互,及划分责任和算法。
3.目录
3.1 创建型模式
3.2 结构型模式
- 适配器模式:兼容多个接口至某种接口类型
- 桥接模式:分离多个不相关维度
- 组合模式:提供单一对象和组合对象统一地访问形式
- 装饰者模式:在访问方式不变的情况下,扩展原有对象的功能
- 外观模式:提供统一接口访问子系统
- 享元模式:复用大量对象
- 代理模式 :限制,修改或者增强原有对象的功能
3.3 行为型模式
- 责任链模式:将行为细分,并依次触发所有细粒化行为
- 命令模式 : 封装请求,和执行者解耦
- 解释器模式 : 解释某种语言的文法
- 迭代器模式 : 不暴露集合对象内部结构的情况下遍历集合
- 中介者模式:将多个对象的交互行为统一到一个中间对象
- 备忘录模式:保存和恢复某个对象的内部状态
- 观察者模式:将某一个对象的状态改变通知到一系列相关对象
- 状态模式 :每种状态对应一种行为
- 策略模式:定义一系列算法,通过改变算法改变其行为
- 模板方法模式:父类/父接口定义骨架,子类实现关键环节
- 访问者模式:为集合中的每种元素提供多种访问者,强调集合元素不变,访问者可动态增加。