прямую зависимость на доктрину? Как минимум, коллекции, которые приходится в конструкторе инстанциировать
Я свои коллекции делал для связей. Удобно для добавления объектов только определенного типа (с помощью тайпхинта). Делал интерфейс UsersCollection, например. Потом создавал класс ArrayUsersCollection, делал extend от ArrayCollection, реализовывал свой интерфейс. Таким образом, ты не даешь внешнему коду использовать функции ArrayCollection от доктрины, а только свои, которые определенны в интерфейсе. Ну как-то так.
А вот внутри коллекций уже юзаешь удобные функции, которые предлагают коллекции доктрины. Ну лично я смотрю на зависимость конкретно от коллекций доктриновских нормально, они у меня даже отдельным депенденси в композере идут, так как удобны в использовании.
Обсуждают сегодня