鍍金池/ 教程/ Python/ 模板設(shè)計模式
反模式
隊列
適配器設(shè)計模式
享元設(shè)計模式
Python設(shè)計模式
工廠模式
模板設(shè)計模式
構(gòu)建器(Builder)設(shè)計模式
Python設(shè)計模式概要
命令設(shè)計模式
Python設(shè)計模式簡介
觀察者設(shè)計模式
代理設(shè)計模式
異常處理
責(zé)任鏈設(shè)計模式
字典實現(xiàn)
抽象工廠設(shè)計模式
Python并發(fā)(多線程)
策略設(shè)計模式
門面(Facade)設(shè)計模式
原型設(shè)計模式
迭代器設(shè)計模式
集合
單例模式
列表數(shù)據(jù)結(jié)構(gòu)
狀態(tài)設(shè)計模式
模型視圖控制器(MVC)模式
裝飾器設(shè)計模式
面向?qū)ο蟾拍畹膶崿F(xiàn)
面向?qū)ο笤O(shè)計模式
字符串和序列化

模板設(shè)計模式

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

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

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

有關(guān)模板設(shè)計模式的實現(xiàn),請參考以下代碼 -

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

執(zhí)行上面示例代碼,得到以下結(jié)果 -

解釋說明

此代碼創(chuàng)建一個模板來準(zhǔn)備餐點。 在這里,參數(shù)表示用于創(chuàng)建茶,披薩等餐點的一部分的屬性。輸出表示屬性的可視化。