Junior — Middle
Ar galėtumėte paaiškinti, kas yra dizaino šablonas Builder?
sobes.tech AI
Atsakymas iš AI
Builder šablonas naudojamas sudėtingo objekto kūrimui žingsnis po žingsnio. Jis atskiria objekto konstravimo procesą nuo jo reprezentacijos, leidžiant sukurti skirtingas objekto variacijas su tuo pačiu kūrimo procesu.
Pavyzdys C#:
public class Pizza
{
public string Dough { get; set; }
public string Sauce { get; set; }
public string Topping { get; set; }
}
public class PizzaBuilder
{
private Pizza pizza = new Pizza();
public PizzaBuilder SetDough(string dough) { pizza.Dough = dough; return this; }
public PizzaBuilder SetSauce(string sauce) { pizza.Sauce = sauce; return this; }
public PizzaBuilder SetTopping(string topping) { pizza.Topping = topping; return this; }
public Pizza Build() { return pizza; }
}
// Naudojimas
var pizza = new PizzaBuilder()
.SetDough("plona")
.SetSauce("pomidoru")
.SetTopping("pepperoni")
.Build();
Šis požiūris palengvina daug parametrų turinčių objektų kūrimą ir pagerina kodo skaitomumą.