Sobes.tech
Back to questions
Junior — Middle
70

Какой тип шаблона Builder применяют, когда результат его выполнения не важен?

Companies where asked
IBS

Answer from AI

sobes.tech AI

Когда результат построения объекта не важен, применяют шаблон Builder с методом Fluent Interface, где методы возвращают самого строителя, позволяя вызывать цепочку методов для настройки, но итоговый объект может не использоваться или быть не нужен. Такой подход часто применяется для конфигурации или настройки, где важен сам процесс установки параметров, а не создание конечного объекта.

Пример на Kotlin для 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() {
        // Здесь нет возврата объекта, просто настраиваем логгер
        println("Logger configured with level=$level and tag=$tag")
    }
}

// Использование:
LoggerBuilder()
    .setLevel("DEBUG")
    .setTag("MyApp")
    .build()  // Результат не важен, важен процесс настройки