One minute
设计模式-行为型模式(第4篇)
行为型模式
通过类继承或者对象组合来划分类与对象的职责,从而应对需求变化为多个交互的对象的冲击
行为型型模式分类一共有7种:模板方法模式、命令模式、访问者模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式、状态模式、策略模式、职责链模式
模板方法模式
定义:定义一个操作中的算法的骨架(稳定),而将一些步骤延迟(变化)到子类。Template Method使得子类既可以不改变(复用)一个算法的结构也可重定义(override 重写)该算法的某些特定步骤。
动机:

类图:

策略模式
定义一系列算法,把他们一个一个封装起来,并且使他们可互相替换(变化)。该模式使得算法可独立于使用它的客户程序(稳定)而变化(扩展,子类化)
- 类图:

观察者模式
定义:定义对象间的一种一对多(变化)的依赖关系,以便当一个对象(subject)的状态发生改变时,所有依赖于它的对象都得到通知并自动更新
场景:消息订阅
动机:

类图:

总结:
