1.定义
定义一个操作中的算法骨架,而将算法的一些步骤延迟到子类中,使得子类可以不改变该算法结构的情况下重定义该算法的某些特定步骤。
2.理解
模板方法模式是结构比较简单的设计模式了,简单来说,就是抽象的父类中定义一系列确定的步骤,而将无法确定的步骤放入到具体实现子类中。还有个好处就是在父类中提取所有子类的公共的部分代码,便于代码复用。
3.示例
java中,支持抽象类,因此该模式很容易写,先用java来写一个样例,然后用golang的组合来模仿:
java:
public class TemplatePattern {
public static void main(String[] args) {
ComputeFactory factory = new LenovoFactory();
String s = factory.produceComputer();
System.out.println(s);
}