李建忠设计模式C++版(十六) 十六、状态模式 1. “状态变化”模式——针对对象变化进行管理,维持高层模块稳定 状态模式 备忘录 2. 动机与背景 某些对象状态改变时,行为也会随之改变,例如文档处于只读状态时的行为与读写状态时的行为可能存在很大不同。在运行时根据对象状态透明更改对象的行为,而不引入紧耦合 3. 没...
Template Method模式是一种非常基础性的设计模式,在面向对象系统中有着大量的应用。它用最简洁的机制(虚函数的多态性)为很多应用程序框架提供了灵活的扩展点(虚函数,子类继承可以override),是代码复用方面的基本实现结构。除了可以灵活应对子步骤的变化外,“不要调用我,让我来调用你”的反向控制结构是Template Method的...