TemplateMethod(模板方法模式)
2011-06-22 08:45
190 查看
名 称
TemplateMethod(模板方法模式)
意 图
定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。TemplateMethod使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。
适 用
环 境
u 一次性实现一个算法的不变的部分,并将可变的行为留给子类来实现。
u 各子类中公共的行为应被提取出来并集中到一个公共父类中以避免代码重复。这是Opdyke和Johnson所描述过的“重分解以一般化”的一个很好的例子。首先识别现有代码中的不同之处,并且将不同之处分离为新的操作。最后,用一个调用这些新的操作的模板方法来替换这些不同的代码。
u 控制子类扩展。模板方法只在特定点调用“hook ”操作,这样就只允许在这些点进行扩展。
结 构
模板方法模式在父类中定义方法,具体的实现交给子类。
TemplateMethod(模板方法模式)
意 图
定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。TemplateMethod使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。
适 用
环 境
u 一次性实现一个算法的不变的部分,并将可变的行为留给子类来实现。
u 各子类中公共的行为应被提取出来并集中到一个公共父类中以避免代码重复。这是Opdyke和Johnson所描述过的“重分解以一般化”的一个很好的例子。首先识别现有代码中的不同之处,并且将不同之处分离为新的操作。最后,用一个调用这些新的操作的模板方法来替换这些不同的代码。
u 控制子类扩展。模板方法只在特定点调用“hook ”操作,这样就只允许在这些点进行扩展。
结 构
模板方法模式在父类中定义方法,具体的实现交给子类。
相关文章推荐
- 15.TemplateMethod-模板方法模式
- C++设计模式-TemplateMethod模板方法模式
- 模板方法模式(TemplateMethod)
- 15.TemplateMethod-模板方法模式
- 设计模式之模板方法模式(TemplateMethod)
- 设计模式——模板方法模式(TemplateMethod Pattern)
- 面向对象设计模式之TemplateMethod模板方法(行为型)
- TemplateMethod模板方法模式
- 模板方法模式(TemplateMethod)代码
- 浅谈JAVA设计模式之——模板方法(TemplateMethod)
- 模板方法模式(TemplateMethod)
- 设计模式 模板方法模式 TemplateMethod
- templateMethod(模板方法模式)
- TemplateMethod模板方法模式
- 模板方法模式(TemplateMethod)
- 设计模式学习之模板方法模式(TemplateMethod,行为型模式)(9)
- C++设计模式-TemplateMethod模板方法模式
- B1:模板方法模式 TemplateMethod
- 模板方法模式(TemplateMethod Pattern)(一):模板方法模式介绍
- 设计模式之模板方法模式(TemplateMethod)