доктриновского класса? (Через инъекции в конструкторе)
Как в статье - https://getrector.org/blog/2021/02/08/how-to-instantly-decouple-symfony-doctrine-repository-inheritance-to-clean-composition
Есть ли какие-то подводные камни? Стоит ли писать так же?
Выглядит адекватно, но одно дело статья, другое дело большие репы в реальных проектах :)
А в чем сомнения? composition over inheritance еще в школе изучают, никогда не наследовался.
Норм работает
а в чем преимущество?
Да как-то раньше банально не задумывался об этом - по документации симфони изначально как стали делать, так и не было вопросов :) Очевидно, что композиция лучше наследования - этим статья и привлекла
В том, что у тебя в сервисах/хэндлерах доступны только те методы, что ты опишешь в интерфейсе своего репозитория, а не 10+ ненужных методов, которые позволяют делать говно.
Обсуждают сегодня