Builder

オブジェクトの生成に関するパターン
構築者


ある、値を事細かに設定できるクラスがあるとする。
そのクラスをある程度簡単に設定することが出来るクラスをBuilderという。

簡単な例で言えば座標を表すPointクラスがあるとして
TopPointBuilderと言うクラスは座標(0,0)のPointインスタンスをビルドする。
CenterPointBuilderと言うクラスであれば真ん中を指し示すPointインスタンスをビルドする。
もちろんPointを自分で座標を指定して作成することも出来る。

Pointクラスのビルド方法を隠蔽化(カプセル化)したい場合に使用する。
==========
割と簡単だけども、めんどくさがってBuilderクラスまでは作成しないことが多いなー