Python-design-patterns-template

提供:Dev Guides
移動先:案内検索

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

出力

上記のプログラムは、次の出力を生成します-

テンプレートパターン

説明

このコードは、食事を準備するためのテンプレートを作成します。 ここで、各パラメーターは、お茶、ピザなどの食事の一部を作成するための属性を表します。

出力は、属性の視覚化を表します。