Design-pattern-builder-pattern
デザインパターン-ビルダーパターン
Builderパターンは、単純なオブジェクトを使用し、段階的なアプローチを使用して、複雑なオブジェクトを構築します。 このタイプのデザインパターンは、オブジェクトを作成する最適な方法の1つであるため、作成パターンの下にあります。
Builderクラスは、最終オブジェクトを段階的に構築します。 このビルダーは、他のオブジェクトから独立しています。
実装
典型的な食事がハンバーガーと冷たい飲み物であるファーストフードレストランのビジネスケースを検討しました。 バーガーはベジバーガーまたはチキンバーガーのいずれかであり、ラッパーで包装されます。 冷たい飲み物はコークスまたはペプシのいずれかで、ボトルに詰められます。
ハンバーガーや冷たい飲み物などの食品を表す_Item_インターフェースと、_Item_インターフェースを実装する具象クラス、およびハンバーガーがラッパーと冷たい飲み物に詰められるように_Packing_インターフェースを実装する食品および具象クラスの包装を表す_Packing_インターフェースを作成します。ボトルとして詰められます。
次に、Item_の_ArrayList_と_MealBuilder_を持つ_Meal_クラスを作成し、_Item_を組み合わせてさまざまなタイプの_Meal_オブジェクトを構築します。 _BuilderPatternDemo、デモクラスは_MealBuilder_を使用して_Meal_を構築します。
ステップ1
食料品と梱包を表すインターフェイスアイテムを作成します。
Item.java
Packing.java
ステップ2
Packingインターフェースを実装する具体的なクラスを作成します。
Wrapper.java
Bottle.java
ステップ3
既定の機能を提供するアイテムインターフェイスを実装する抽象クラスを作成します。
Burger.java
ColdDrink.java
ステップ4
BurgerおよびColdDrinkクラスを拡張する具象クラスを作成します
VegBurger.java
ChickenBurger.java
Coke.java
Pepsi.java
ステップ5
上記で定義されたItemオブジェクトを持つMealクラスを作成します。
Meal.java
ステップ6
Mealオブジェクトを作成する実際のビルダークラスであるMealBuilderクラスを作成します。
MealBuilder.java
ステップ7
BuiderPatternDemoはMealBuiderを使用して、ビルダーパターンを示します。
BuilderPatternDemo.java
ステップ8
出力を確認します。