Встречается на 2% собеседований по Python
Что такое Абстрактная фабрика
Абстрактная фабрика — это порождающий паттерн проектирования, который позволяет создавать семейства связанных объектов, не указывая их конкретных классов. Он предоставляет интерфейс для создания объектов, но делегирует выбор их типов подклассам.
Когда использовать:
- Когда система не должна зависеть от способа создания, компоновки и представления объектов
- Когда нужно создавать семейства связанных объектов
Пример на 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()
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы