Sobes.tech
Junior — Middle

Poderia explicar o que se entende por padrão de projeto Builder?

sobes.tech IA

Resposta da IA

O padrão Builder é utilizado para criar objetos complexos passo a passo. Ele separa o processo de construção do objeto de sua representação, permitindo criar diferentes variantes do objeto com o mesmo processo de construção.

Exemplo em 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; }
}

// Uso
var pizza = new PizzaBuilder()
    .SetDough("fino")
    .SetSauce("tomate")
    .SetTopping("pepperoni")
    .Build();

Este método simplifica a criação de objetos com múltiplos parâmetros e melhora a legibilidade do código.