テンプレートメソッド(Template Method)

スーパークラスのメソッドで手順を決めておき、順番に呼び出されているメソッドについては、実装をサブクラスに任せることにする。

親クラスは、子クラスをおおよそ想定して、子クラスでオーバーライドできる抽象メソッドを用意しておく。子クラスでは差異の分だけ実装する。

要素を部品として分解し、汎用性を持たせる。そして抽象部分を抽出してそれを元に全体の実装を定義するよう

スーパークラスがアルゴリズムの不変な部分だけを定義し(テンプレート)、可変な部分の具体的な実装についてはサブクラスに任せる

処理の流れは同じで、一部の処理が違う場合に使う

おおまかな処理順をスーパークラスで決めて、

処理の詳細はサブクラスで実装します。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です