Python 设计模式 - 模板模式

  • 简述

    模板模式使用抽象操作在基类中定义基本算法,其中子类覆盖具体行为。模板模式将算法的大纲保存在一个单独的方法中。这种方法称为模板方法。
    以下是模板模式的不同特征 -
    • 它定义了操作中算法的骨架
    • 它包括子类,这些子类重新定义了算法的某些步骤。
    
    class MakeMeal:
       def prepare(self): pass
       def cook(self): pass
       def eat(self): pass
       def go(self):
          self.prepare()
          self.cook()
          self.eat()
    class MakePizza(MakeMeal):
       def prepare(self):
          print "Prepare Pizza"
       
       def cook(self):
          print "Cook Pizza"
       
       def eat(self):
          print "Eat Pizza"
    class MakeTea(MakeMeal):
       def prepare(self):
          print "Prepare Tea"
        
       def cook(self):
          print "Cook Tea"
       
       def eat(self):
          print "Eat Tea"
    makePizza = MakePizza()
    makePizza.go()
    print 25*"+"
    makeTea = MakeTea()
    makeTea.go()
    

    输出

    上述程序生成以下输出 -
    模板模式

    解释

    此代码创建一个模板来准备饭菜。在这里,每个参数代表创建餐点(如茶、披萨等)的属性。
    输出表示属性的可视化。