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

Какие знаешь порождающие паттерны проектирования

Фабричный метод (Factory Method) – это порождающий паттерн, который определяет интерфейс для создания объекта, но оставляет подклассам решение о том, какой класс инстанцировать. Позволяет делегировать создание объектов подклассам, обеспечивая гибкость и расширяемость кода.

Пример на Python:

python
from abc import ABC, abstractmethod

class Animal(ABC):
@abstractmethod
def speak(self):
pass

class Dog(Animal):
def speak(self):
return "Woof!"

class Cat(Animal):
def speak(self):
return "Meow!"

class AnimalFactory(ABC):
@abstractmethod
def create_animal(self) -> Animal:
pass

class DogFactory(AnimalFactory):
def create_animal(self) -> Animal:
return Dog()

class CatFactory(AnimalFactory):
def create_animal(self) -> Animal:
return Cat()

Использование

dog_factory = DogFactory()
dog = dog_factory.create_animal()
print(dog.speak()) # Вывод: Woof!

text

**Преимущества:**
- Избавляет от привязки к конкретным классам
- Упрощает добавление новых типов объектов
- Соблюдает принцип открытости/закрытости (OCP)
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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