模板設計模式

模板模式使用抽象操作在基類中定義基本算法,其中子類覆蓋具體行爲。模板模式將算法的輪廓保留在單獨的方法中。該方法被稱爲模板方法。

以下是模板模式的不同功能 -

  • 它定義了操作中算法的骨架。
  • 它包括子類,它重新定義了算法的某些步驟。

有關模板設計模式的實現,請參考以下代碼 -

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()

執行上面示例代碼,得到以下結果 -
模板設計模式

解釋說明

此代碼創建一個模板來準備餐點。 在這裏,參數表示用於創建茶,披薩等餐點的一部分的屬性。輸出表示屬性的可視化。