Где используется паттерн фабрика
Python
Middle
Arendadata
Где используется паттерн фабрика
Ответы
Паттерн "Фабрика" используется, когда нужно создавать объекты, не указывая их конкретных классов. Основные сценарии:
- **Сложная логика создания** – когда инициализация объекта требует дополнительных проверок или вычислений
- **Гибкость** – когда система должна работать с разными типами объектов, которые могут добавляться позже
- **Инкапсуляция** – скрытие деталей создания объектов от клиентского кода
Пример с фабричным методом:
```
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("Неизвестный тип транспорта")
```
Фабрика особенно полезна в крупных проектах, где важно разделять код создания объектов от их использования.