Sobes.tech
Junior — Middle

Mohl byste vysvětlit, co se rozumí vzorem návrhu Builder?

sobes.tech AI

Odpověď od AI

Vzor Builder se používá k postupnému vytváření složitých objektů. Odděluje proces konstrukce objektu od jeho reprezentace, což umožňuje vytvářet různé varianty objektu se stejným procesem sestavení.

Příklad v 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; }
}

// Použití
var pizza = new PizzaBuilder()
    .SetDough("tenké")
    .SetSauce("rajčatová")
    .SetTopping("pepperoni")
    .Build();

Tento přístup usnadňuje tvorbu objektů s mnoha parametry a zlepšuje čitelnost kódu.