生成に関するデザインパターン
生成に関するデザインパターンは、 柔軟性を増し、 コードの再利用を促すような、 オブジェクト生成の仕組みを提供します。

スーパークラス内でオブジェクトを作成するためのインターフェースを提供しますが、 サブクラスでは作成されるオブジェクトの型を変更することができます。

関連したオブジェクトの集りを、 具象クラスを指定することなく生成することを可能にします。

複雑なオブジェクトを段階的に構築できます。 このパターンを使用すると、 同じ構築コードを使用して異なる型と表現のオブジェクトを生成することが可能です。

既存オブジェクトのコピーをそのクラスに依存することなく可能とします。

クラスが一つのインスタンスのみを持つことを保証するとともに、 このインスタンスへの大域アクセス・ポイントを提供します。