ファクトリパターン
GoFの生成パターン。オブジェクトの生成をクライアントから「ファクトリ」に移し、具象クラスを知らなくて済むようにする。
3種類ある。シンプルファクトリ(静的メソッドがインスタンスを返す)、ファクトリメソッド(サブクラスがクラスを決める)、抽象ファクトリ(関連するオブジェクト群を生成する)。Pythonでは__new__がファクトリの役を果たせる。SpringのBean Factoryもその一例だ。
実行時の設定で生成する実装が変わる場合が適所である。コンストラクタをただ包むだけで中身のないファクトリは、無意味な間接層というアンチパターンになる。