S eda1a14b50ee24bcab19b62f40858e76 Template Method パターン

子クラスに専用のコードを書いて、親クラスはそれを呼ぶ。親は子がやってることは知らなくても良い!

継承の利点を最大限に使ったデザインパターン。

継承しなければならないので、ある程度密結合にはなる。継承する必然性があるかどうかを考えてから取り入れる。

PHP

abstract class Person{
    function hoge(){
        $this->someProc();
        $this->specialCase();
        $this->someProc();
    }
    abstract function specialCase();
}
class Akkun extends Person{
    function specialCase(){
        echo "this is akkun class";
    }
}
class Hirokun extends Person{
    function specialCase(){
        echo "this is hirokun class";
    }
}

もしかして

    他の人の「Template Method パターン」

    S eda1a14b50ee24bcab19b62f40858e76

    無所属ソフトウェアエンジニア

    (1722words)

    最新

      最新エントリ

        関連ツイート