A estrutura de diretórios da aplicação é um requisito importante para a futura produtividade no projeto, pois se não for bem pensada, seu projeto pode ficar amarrado à pequenos problemas como: Repetição de código, não ter escalabilidade nem flexibilidade, dificil migração, etc.
É um ponto que, quando usamos frameworks, não costumamos pensar muito, devido a eles já trazerem uma estrutura de diretórios própria que nem sempre é a melhor para o seu projeto.
Na minha opinião a estrutura de diretórios não deve simplesmente fornecer um padrão para seus projetos, mas sim fornecer flexibilidade, escalabilidade e se possivel produtividade. Alguns frameworks lhe garantem alguns benefícios se você seguir algumas convenções que eles impõem. Mas não gosto da maioria destas convenções e acho que nós devemos programar da maneira que mais nos convém.
Existem inúmeras maneiras de você organizar seu projeto, aqui vou falar de alguns fatores que você poderá pensar na hora de definir sua estrutura de diretórios (independente se usar framework ou não), mas óbvio que isso não significa que é a mais adequada para você ou sua aplicação corrente.
O que será falado vale para qualquer projeto que utilize do padrão MVC. Você terá que adaptar conforme seu framework exigir. Se você não utiliza framework mas programa segundo o padrão MVC esse artigo poderá lhe ajudar.
Leia o resto deste post »