今日の勉強

自らクローンを生成し、直接コンストラクトせずに、間接的にコンストラクトするパターン。
オブジェクトの生成を他のひとに任すことで、
オブジェクトの生成をクラス名を直接記述することから解放して、依存度を下げます。

オブジェクトの生成にいろんなパターンがある場合にこれは必須ですね。オブジェクトを生成できる場所が散らかっているとあまり簡単にコンストラクタを増やしたりできなくなってしまうので、一カ所にまとまっているとコンストラクタの影響がそこだけで済むメリットはとても大きいと思います。
また、一つのコンストラクタに対して複数の生成方法を作成できるのも大きいですね。オブジェクトの生成方法を変えるたびにコンストラクタを増やしていてはきりがないので。