Какова основная роль и применение паттерна Factory в разработке программного обеспечения?

Паттерн Factory служит для создания объектов без необходимости указывать конкретный класс создаваемого объекта напрямую.

Короткий ответ

Что ответить на собеседовании

Паттерн Factory служит для создания объектов без необходимости указывать конкретный класс создаваемого объекта напрямую. Это позволяет отделить логику создания объектов от их использования, что повышает гибкость и расширяемость кода.

Подробный разбор

Ответ с пояснениями

Паттерн Factory служит для создания объектов без необходимости указывать конкретный класс создаваемого объекта напрямую. Это позволяет отделить логику создания объектов от их использования, что повышает гибкость и расширяемость кода.

Основная роль:

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

Пример на Python:

class Animal:
    def speak(self):
        pass

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

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

class AnimalFactory:
    @staticmethod
    def create_animal(animal_type):
        if animal_type == "dog":
            return Dog()
        elif animal_type == "cat":
            return Cat()
        else:
            raise ValueError("Unknown animal type")

# Использование
animal = AnimalFactory.create_animal("dog")
print(animal.speak())  # Выведет: Woof!

Таким образом, Factory упрощает управление созданием объектов и делает код более поддерживаемым.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее