Я работаю с silexphp/Pimple
Контейнеры для инъекций зависимостей (DIC) и не уверены, как обращаться с классическим шаблоном Factory.Контейнер для инъекций на основе PHP с фабрикой
Пример:
Родитель класс Animal.php
имеет два дочерних классов, называемых DogAnimal.php
и CatAnimal.php
. Количество дочерних классов может расти.
В этом случае я бы хотел создать фабрику для создания новых объектов или детей класса Animal. Pimple позволяет создавать методы Factory для каждой службы.
При использовании Pimple DIC я не думаю, что хочу добавить каждый подкласс (Dog, Cat и т. Д.) В качестве сервиса. Тем более, что список растет. Для меня это похоже на неправильное использование DIC, но, возможно, я ошибаюсь.
Правильно ли я полагаю, что I должен создать сервис Animal Factory и использовать Pimple для установки зависимостей на заводе, который, в свою очередь, используется для создания новой собаки или кошки?
Высокий. Спасибо за проверку работоспособности. – webish