Sobes.tech
Junior — Middle

Que tipo de modelo Builder é utilizado quando o resultado da sua execução não é importante?

sobes.tech IA

Resposta da IA

Quando o resultado da construção de um objeto não é importante, aplica-se o padrão Builder com método Fluent Interface, onde os métodos retornam o próprio construtor, permitindo encadear métodos para configuração, mas o objeto final pode não ser utilizado ou ser desnecessário. Essa abordagem é frequentemente usada para configuração ou ajuste, onde o importante é o processo de definir parâmetros, não a criação do objeto final.

Exemplo em Kotlin para Android:

class LoggerBuilder {
    private var level: String = "INFO"
    private var tag: String = "App"

    fun setLevel(level: String) = apply { this.level = level }
    fun setTag(tag: String) = apply { this.tag = tag }

    fun build() {
        // Aqui não há retorno de objeto, apenas configuramos o logger
        println("Logger configurado com level=$level e tag=$tag")
    }
}

// Uso:
LoggerBuilder()
    .setLevel("DEBUG")
    .setTag("MyApp")
    .build()  // O resultado não importa, importa o processo de configuração