行为型模式包含以下种类:
策略模式、模板方法模式、状态模式、观察者模式、备忘录模式、中介者模式、命令模式、访问者模式、责任链模式、迭代器模式、解释器模式……学习中
1、策略模式(Strategy)
通过组合的方式实现策略,context环境类中保存一个策略类的指针,通过设计多个具体策略类来实现算法。
缺点:可能会导致具体的策略类过多。
2、模板方法模式(Template)
算法框架在基类中实现,算法细节在继承类中实现;达到框架和细节的分离
缺点:如果有多个算法框架都想要实现同样的算法细节,需要多个继承结构。
3、状态模式(State)
状态模式,将所有的状态都设计为具体类,context中保存state的指针,具体的state中也可以调用context中改变当前状态(将state设置为context 的友元类)
如TC