Sobes.tech
Junior — Middle

Можете ли да објасните шта подразумева образац за дизајн Builder?

sobes.tech АИ

Одговор од АИ

Шаблон Builder се користи за постепено креирање сложеног објекта. Он одваја процес конструисања објекта од његове представе, омогућавајући креирање различитих варијанти објекта са истим процесом изградње.

Пример у 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; }
}

// Коришћење
var pizza = new PizzaBuilder()
    .SetDough("танко")
    .SetSauce("помођао")
    .SetTopping("пеперони")
    .Build();

Овај приступ олакшава креирање објеката са много параметара и побољшава читљивост кода.