デザインパターン

Factory Method

適応可能性

構造

Factory Method.gif

構成要素

Product クラス ( Document クラス)
  • factory method が生成するオブジェクトのインタフェースを定義する。
ConcreteProduct クラス ( MyDocument クラス)
  • Product クラスのインタフェースを実装する。
Creator クラス ( Application クラス)
  • Product 型のオブジェクトを返す factory method を宣言する。また、ある Concrete Product オブジェクトを返すように factory method の実装をデフォルトで定義することもある。
  • Product のオブジェクトを生成するために factory method を呼び出す。
ConcreteCreator クラス ( MyApplication クラス)
  • ConcreteProduct クラスのインスタンスを返すように、factory method をオーバーライドする。

目的

オブジェクトを生成するときのインタフェースだけを規定して、実際にどのクラスをインスタンス化するかはサブクラスが決めるようにする。Factory Method パターンは、インスタンス化をサブクラスに任せる。

コメント


(Input image string)

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
SmartDoc