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

Что такое паттерн Фабрика

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

Плюсы:

  • Упрощает добавление новых типов объектов без изменения существующего кода.
  • Инкапсулирует логику создания объектов.
  • Позволяет работать с абстракциями, а не конкретными классами.

Пример на 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:
    def create_animal(self, animal_type):
        if animal_type == "dog":
            return Dog()
        elif animal_type == "cat":
            return Cat()
        else:
            raise ValueError("Unknown animal type")

factory = AnimalFactory()
animal = factory.create_animal("dog")
print(animal.speak())  # Вывод: Woof!

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

  • Когда заранее неизвестно, объекты каких типов нужно создавать.
  • Когда система должна быть независимой от процесса создания объектов.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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