Встречается на собеседованиях • сегодня

Что такое Абстрактная фабрика

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

Когда использовать:

  • Когда система не должна зависеть от способа создания, компоновки и представления объектов
  • Когда нужно создавать семейства связанных объектов

Пример на Python:

python
from abc import ABC, abstractmethod

class AbstractFactory(ABC):
    @abstractmethod
    def create_product_a(self): pass
    @abstractmethod
    def create_product_b(self): pass

class ConcreteFactory1(AbstractFactory):
    def create_product_a(self): return ProductA1()
    def create_product_b(self): return ProductB1()

class ConcreteFactory2(AbstractFactory):
    def create_product_a(self): return ProductA2()
    def create_product_b(self): return ProductB2()

# Клиентский код работает с фабриками и продуктами через абстрактные интерфейсы
def client_code(factory: AbstractFactory):
    product_a = factory.create_product_a()
    product_b = factory.create_product_b()
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы