建築者や建築業者などを意味する単語です。パターンとは、同じ作成過程で異なる表現形式の結果を得るためのパターンです。家を建てることを考えてみます。完成する家がどのような家になるかというのは「家の構築過程」と「素材」大きく2つの要素で決定されると考えてみてください。「作成過程」とは、「どのような順番で、どこに何を配置していくか」というようなことであり、「素材」とは、「柱には何を使って、壁には何を使って・・・」ということであると考えてください。様々なものが考えられます。いった場合も考えられます。家を建ててください』という要望に柔軟に応えることができるようになります。呼ばれるものを組み合わせることで、オブジェクトの生成をより柔軟にし、そのオブジェクトの「作成過程」をもコントロールすることができるようにするためのパターンです。サンプルケースサンプルケースでは、理科の実験で、食塩水と砂糖水を作ることを考えましょう。あらわすクラスは以下のソースコードで与えられているものとします。water;}}食塩水を作るのなんてとても簡単だとお思いでしょう。余計なことをいろいろしながら作る必要がある場合もあるのです。数学の問題には、以下のような問題がよく出題されます。上記のような食塩水オブジェクトのインスタンスを作成するためには、以下のようにします。場合、このような方法で解決されるでしょう。場合によっては、もっと柔軟に食塩水オブジェクトを得たいと思うことがあるかもしれません。さまざまな要求が考えられますが、Builderパターンを利用することで、以下のような要求に応えることができるようになります。同様の作成過程で得られる溶液を何度も利用したい。同じ方法で砂糖水を作成したい。なるクラスを作成します。役割は「表現形式」を決定することです。加える」ということを決定することです。役割は、「溶媒に水、溶質に食塩」を使うことを決定することです。クラス図にすると、以下のようになります。それでは、ソースコードを見てみましょう。メソッドを定義しています。インタフェースを利用して、「作成過程」にのっとって、インスタンスを組み立てていきます。実装クラスが渡されるのかということを知っている必要がありません。すげ替えが簡単に行えるようになっているのです。クラスを見てみましょう。自由に組み合わせ、より柔軟にインスタンスを生成することができるようになります。実際の生成手順は以下のようになります。用意しておけば、同じ「作成過程」で作成される砂糖水を得ることも簡単にできます。用意しておくことで、同じ文書を要求に合わせて、異なる表現形式で出力することができるようになります。パターンの一般的なクラス図を以下に示します。Textを触ってみた。