
600
14
章
Builder
パターン
Builder
パターン
製品の構築をカプセル化し、段階的に製品を構築できるようにするために、
Builderパターンを使いましょう。
シナリオ
あなたはオブジェクト町の郊外にある新しいテーマパーク「パターンズランド」の休
暇プランナーの構築を依頼されています。テーマパークのゲストは、ホテルやさまざま
な種類の入場券を選んだり、レストランや特別なイベントの予約をしたりすることがで
きます。休暇プランナーを作成するためには、以下のような構造を作成する必要があり
ます。
柔軟な設計が必要
ゲストのプランナーは、日数とアクティビティの種類などがそれぞれ異なります。例え
ば、地元の人たちならホテルは不要で、夕食と特別イベントの予約だけをしたいと思うで
しょう。一方、飛行機でオブジェクト町に来るゲストは、ホテル、夕食の予約、入場券が
必要でしょう。
そのため、ゲストプランナーと可能なすべてのオプションを表す柔軟なデータ構造が必
要です。場合によっては、複雑な手順の流れに従ってプランナーを作成する必要もありま
す。その作成手順と混合しない形で複雑な構造を作成する方法を提供するには、どうすれ
ばよいでしょうか。
どの日も、ホテル予約、チケット、食
事、特別イベントを好きなように組み
合わせられます。
休暇は何日かにわたって計画
します。
休暇
3
日目
2
日目
1
日目
ホテル
パーク
チケット
食事
夕食
特別
イベント
ホテル
パーク
チケット
食事
パターンズ
オンアイス
夕食
特別
イベント
ホテル
パーク
チケット ...