Встречается на 1% собеседований по Python

Где используется паттерн фабрика

Паттерн "Фабрика" используется, когда нужно создавать объекты, не указывая их конкретных классов. Основные сценарии:

  1. Сложная логика создания – когда инициализация объекта требует дополнительных проверок или вычислений
  2. Гибкость – когда система должна работать с разными типами объектов, которые могут добавляться позже
  3. Инкапсуляция – скрытие деталей создания объектов от клиентского кода

Пример с фабричным методом:

python
from abc import ABC, abstractmethod

class Transport(ABC):
    @abstractmethod
    def deliver(self):
        pass

class Truck(Transport):
    def deliver(self):
        return "Грузовик доставляет по земле"

class Ship(Transport):
    def deliver(self):
        return "Корабль доставляет по морю"

class TransportFactory:
    def create_transport(self, transport_type: str) -> Transport:
        if transport_type == "truck":
            return Truck()
        elif transport_type == "ship":
            return Ship()
        else:
            raise ValueError("Неизвестный тип транспорта")

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

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

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

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