Organização de pacote de uma Aplicação

2 respostas
C

Galera, boa tarde!!

Imaginem um ERP desenvolvido em Java Web utilizando o MVC (independentemente do framework). Qual seria a melhor forma de organizar os pacotes?
Não tenho muita experiência, porém na minha visão ficaria o seguinte:

br.com.aplicacao.controller (Classes controllers utilizadas em todos os modulos)
br.com.aplicacao.controller.financeiro (Classes controllers presentes no modulo financeiro)
br.com.aplicacao.controller.comercial (Classes controllers presentes no modulo comercial)
br.com.aplicacao.controller.atendimento (Classes controllers presentes no modulo atendimento)
br.com.aplicacao.model (Classes modelos utilizadas em todos os modulos)
br.com.aplicacao.model.financeiro (Classes controllers presentes no modulo financeiro)
br.com.aplicacao.model.comercial (Classes controllers presentes no modulo comercial)
br.com.aplicacao.model.atendimento (Classes controllers presentes no modulo atendimento)
br.com.aplicacao.dao (Classes dao’s utilizadas em todos os modulos)
br.com.aplicacao.dao.financeiro (Classes dao’s presentes no modulo financeiro)
br.com.aplicacao.dao.comercial (Classes dao’s presentes no modulo comercial)
br.com.aplicacao.daol.atendimento (Classes dao’s presentes no modulo atendimento)
etc etc etc…

Este é o caminho indicado ou não?

Agradeço a atenção de todos! Abraços!

2 Respostas

raphael.ricci

O interessante seria você usar um facade que se comunicaria entre o seu dao e o controle. Assim, você tiraria o acoplamento entre as camadas e ficaria mais fácil a
manutenção no futuro. Esse post http://www.guj.com.br/java/75686-padrao-facade dá uma explicada no facade.

Outra coisa legal também é criar uma camada de serviço, que seria responsável pelas regras de negócio que passaria para o facade e chegaria ao control.

Algo assim: dao->serviço->facade->control->view

C

raphael.ricci, entendi!

Já estou estudando o facade para este caso. Você poderia me exemplificar a organização de pacotes que você faria para este caso do ERP. Não precisa citar classes, apenas os pacotes.
Considere os módulos financeiro, comercial e atendimento em um modelo MVC, que por sua vez terá classes de utilitários e relatótios.

Criado 25 de outubro de 2012
Ultima resposta 25 de out. de 2012
Respostas 2
Participantes 2