Что такое Factory Builder

«Что такое Factory Builder» — вопрос из категории Паттерны, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Factory Builder — это паттерн проектирования, объединяющий Factory Method и Builder. Он позволяет создавать сложные объекты поэтапно, делегируя процесс создания отдельным фабрикам.

Основные преимущества:

  • Гибкость в создании объектов с разными конфигурациями
  • Инкапсуляция логики создания
  • Упрощение поддержки и масштабирования

Пример на Kotlin:

interface Car {
    fun drive()
}

class Sedan : Car {
    override fun drive() = println("Driving sedan")
}

class SUV : Car {
    override fun drive() = println("Driving SUV")
}

class CarFactory {
    fun createSedan(): Car = Sedan()
    fun createSUV(): Car = SUV()
}

// Использование
val factory = CarFactory()
val myCar = factory.createSUV()
myCar.drive()

Особенно полезен при работе с большим количеством зависимостей или сложной логикой инициализации объектов.