设计模式之策略和模板方法模式
TemplateMethod:(1)、意图:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。TemplateMethod使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。(2)、适用性:A、一次性实现一个算法的不变的部分,并将可变的行为留给子类来实现。B、各子类中公共的行为应被提取出来并集中到一个公共父类中以避免代码重复。C、控制子类扩展。(3)、效果:模板方法是一种代码复用的基本技术。它们在类库中尤为重要,它们提取了类库中的公共行为。(4)、注意事项:A、使用C++访问控制:在C++中,一个模板方法调用的原语操作可以被定义为保护成员。这保证它们只被模板方法调用。必须重定义
用户评论