Wann ist das Builder-Muster notwendig?
Das Builder-Muster bietet einen flexiblen und strukturierten Ansatz zum Konstruieren komplexer Objekte, insbesondere wenn deren Konstrukteure dies tun verfügen über eine umfangreiche Liste von Parametern.
Beispiele für Common Anwendungen:
Vorteile gegenüber dem Factory-Muster:
Beispielimplementierung in Java:
public class Pizza { private int size; private boolean cheese; private boolean pepperoni; private boolean bacon; private Pizza(Builder builder) { this.size = builder.size; this.cheese = builder.cheese; this.pepperoni = builder.pepperoni; this.bacon = builder.bacon; } public static class Builder { // Required private final int size; // Optional private boolean cheese = false; private boolean pepperoni = false; private boolean bacon = false; public Builder(int size) { this.size = size; } public Builder cheese(boolean value) { this.cheese = value; return this; } public Builder pepperoni(boolean value) { this.pepperoni = value; return this; } public Builder bacon(boolean value) { this.bacon = value; return this; } public Pizza build() { return new Pizza(this); } } }
Dieser Builder ermöglicht eine flexible und konsistente Pizza Konfiguration:
Pizza pizza = new Pizza.Builder(12) .cheese(true) .pepperoni(true) .bacon(false) .build();
Das obige ist der detaillierte Inhalt vonWann sollten Sie das Builder-Muster für die Objektkonstruktion verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!