模板模式使用抽象操作在基類中定義基本算法,其中子類覆蓋具體行為。模板模式將算法的輪廓保留在單獨的方法中。該方法被稱為模板方法。
以下是模板模式的不同功能 -
有關(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)建茶,披薩等餐點的一部分的屬性。輸出表示屬性的可視化。