デザインパターンの勉強でFactory Methodとか書いてみた【PHP】
デザインパターンが気になったので、調べてみた。よく使われているものとして、Factory Methodというのがあったのでそれに関するテストコードを書いて整理。
Factory Method
このパターンでは使いたいオブジェクトを生成するクラスを用意する。例えばこんな感じ。
SmartPhoneクラスはメーカーとモデルを保持している。
SmartPhoneFactoryクラスはSmartPhoneインスタンスを生成するだけのクラス。
ポイントは呼び出す...Factoryクラスをどのように使うか。
次のようにすれば、
インスタンスを形成するときに値によって、柔軟にクラスを使うことができたりする。今回は正しいクラスなのかどうかを判定している。例えば他にもxml,csv,xlsなど種類に応じたクラスをそれぞれ用意しておけば、Factoryで引数により分岐をして、柔軟に処理ができそう。
正直、もう少し勉強してみないと難しい。
参考: