Junior — Middle
101
Factory şablonunun işləmə prinsipini və onun əsas məqsədini izah edə bilərsinizmi?
Şirkətlər soruşuldu
Код Открытия
AI-dan cavab
sobes.tech Süni İntellekt
Паттерн Factory (фабрика) предназначен для создания объектов без указания конкретного класса создаваемого объекта напрямую. Основная идея — делегировать создание объектов специальному методу или классу.
Это позволяет:
- Изолировать код создания объектов от их использования.
- Легко менять тип создаваемых объектов без изменения клиентского кода.
- Упростить добавление новых типов объектов.
Пример на Python:
class Animal:
def speak(self):
pass
class Dog(Animal):
def speak(self):
return "Гав"
class Cat(Animal):
def speak(self):
return "Мяу"
class AnimalFactory:
@staticmethod
def create_animal(animal_type):
if animal_type == "dog":
return Dog()
elif animal_type == "cat":
return Cat()
else:
return None
# Использование
animal = AnimalFactory.create_animal("dog")
print(animal.speak()) # Выведет: Гав
Таким образом, клиентский код не зависит от конкретных классов животных, а работает через фабрику.