0%

23 种设计模式——行为型设计模式

引子

设计模式的六大原则

行为型设计模式

行为性设计模式描述 类或对象之间怎样相互协作共同完成单个对象无法单独完成的任务,以及怎样分配职责

1)模板方法模式(Template Method)
定义一个操作中的算法骨架,而将算法的一些步骤延迟到子类中,使得子类可以不改变该算法结构的情况下重定义该算法的某些特点步骤。

2)策略模式(Strategy)
定义了一系列算法,并将每个算法封装起来,使它们可以相互替换,且算法的改变不会影响算法的客户。

3)命令模式(Command)
将一个请求封装为一个对象,使发出请求的责任和执行请求的责任分割开。

4)职责链模式(Chain of Responsibility)
把请求从链中的一个对象传到下一个对象,直到请求被响应为止。通过这个方式去除对象之间的耦合。

5)状态模式(State)
允许一个对象在其内部状态发生改变时改变其行为能力。

6)观察者模式(Observer)
多个对象间存在一对多的关系,当一个对象发生改变时,把这种改变通知给其他多个对象,从而影响其它对象的行为。

7)中介者模式(Mediator)
定义一个中介对象来简化原有对象之间的交互关系,降低系统中对象的耦合度,使原有对象之间不必户互了解。

8)迭代器模式(Iterator)
提供一种方法来顺序访问聚合对象中的一系列数据,而不暴露聚合对象的内部表示。

9)访问者模式(Visitor)
在不改变集合元素的前提下,为一个集合中的每个元素提供多种访问方式,即每个元素有多个访问者对象。

10)备忘录模式(Memento)
在不破坏封装性的前提下,获取并保存一个对象的内部状态,以便以后回复它。

11)解释器模式(Interpreter)
提供如何定义语言的文法,以及对语言句子的解释方法,即解释器。

策略模式(Strategy)

引言

定义与特点

定义
主要优点
主要缺点

结构与实现

结构

角色有哪些?
设计图

实现

写实现代码

应用场景

扩展

命令模式(Command)

引言

定义与特点

定义
主要优点
主要缺点

结构与实现

结构

角色有哪些?
设计图

实现

写实现代码

应用场景

扩展

欢迎关注我的其它发布渠道