Conforme uma aplicação Laravel cresce, a abordagem padrão de "controller gordo / model gordo" se torna difícil de manter. Aplicações maiores se beneficiam de camadas arquitetônicas adicionais — classes de serviço, classes de ação, repositórios, form requests e organização clara de domínio — para manter a lógica de negócio organizada, testável e sustentável.
O problema: a lógica acaba nos lugares errados
Small apps: logic in controllers and models is fine.
Large apps: controllers get bloated, models become "god objects", logic is duplicated
→ hard to test, maintain, and reason about. Extract logic into dedicated layers.
