Будучи разработчиком Symfony-любителем и работая с более опытными разработчиками Symfony, у меня сложилось впечатление, что это во многом зависит как от того, что лучше всего подходит для приложения, так и от ваших предпочтений в организации кода. Как только вы начнете работать над более сложным приложением, ответы на эти вопросы в некоторой степени сами собой ответят, поскольку вы начнете замечать, как организация ваших проектов влияет на простоту работы с ним.
На сайте, который я сейчас создаю, у меня около 20 модулей с:
- модулей, которые имеют одно действие и пары шаблонов
- модулей, которые имеют отдельные действия, обслуживающие несколько шаблонов
- модулей с несколькими действиями, обслуживающими несколько шаблонов
Всего, возможно, 40-50 действий.
Помимо организации вашего кода по отношению к вашим моделям, структура модуля также имеет значение по отношению к каскаду конфигурации Symfony. Поскольку макеты и файлы конфигурации, такие как view.yml, security.yml и т. Д., Легче всего настроить на уровне приложений и модулей, хорошая структура помогает вам напрямую использовать преимущества каскада. То же самое относится к правилам маршрутизации, в зависимости от того, как вы используете их на своем сайте.
Мне не хватает понимания, чтобы прокомментировать производительность - возможно, кто-то еще здесь. Было бы интересно услышать об этом сам.