23种设计模式之模板方法(Template Method)
模板方法模式是一种类的行为型模式,用于定义一个操作中算法的骨架,而将一些步骤延迟到子类中。模板方法模式使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤,其缺点是对于不同的实现,都需要定义一个子类,这会导致类得个数增加,但是更加符合类职责的分配原则,使得类得内聚性得以提高。
优点:代码重用的基础技术
使用场景:
1)想要一次实现算法的不变部分,而使用子类实现算法的可变行为。
2)当子类间的通用行为需要分解、定位到通用类的时候,这样可以避免代码重复的问题。
Template Method