模板設計模式


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

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

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

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

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

執行上面範例程式碼,得到以下結果 -

解釋說明

此程式碼建立一個模板來準備餐點。 在這裡,引數表示用於建立茶,披薩等餐點的一部分的屬性。輸出表示屬性的視覺化。