Не слишком увлекайтесь "правилами" MVC и тому подобного. В конечном итоге вы хотите, чтобы ваш код был настроен таким образом, чтобы он сводил к минимуму влияние / отток будущих изменений. Менее важно, где находится код, и более важно, что и как он взаимодействует с другим кодом. Я вижу, что многие люди берут простой компонент, такой как экран входа в систему, и создают модели, представления, контроллеры, помощники представлений, фасады сервисов и т. Д. В итоге получается более 75 строк кода для того, что должно быть около 20. также распространяет код среди множества файлов, а не одного. Так что, в конце концов, вы сделали обслуживание трудным, а не легким. Я не спорю с тем, чтобы игнорировать шаблоны проектирования, а скорее практичен в этом. Надеюсь, это поможет.