| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 16/11/2004 12:14:22
|
hivaj
JavaBaby
Membro desde: 07/02/2003 12:03:11
Mensagens: 93
Offline
|
Amigos peço uma opiniao, sugestão ou critica sobre a estrutura de pacotes que
estou definindo para um sistema web com 12 modulos.
Segue os pacotes:
br.com.empresa.base
TOBase, VLBase, DAOBase
br.com.empresa.dao
DAOXXX
br.com.empresa.to
TOXXX
br.com.emnpresa.vl
VLXXX
br.com.empresa.factory
DAOFactory, TOFactory, etc...
br.com.empresa.service
Locator, ServiceLocator
br.com.empresa.session
EJB's
br.com.emrpesa.uitl
Helper Classes
Como tenho 12 modulos seria melhor eu criar um nivel acima de pacotes para cada modulo, exemplo:
br.com.empresa.modulo1.dao
br.com.empresa.modulo2.dao
O que voce acham... os que tem mais vivencia o que sugerem...
Obrigado a todos que derem sua opniao.
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 16/11/2004 12:37:05
|
pcalcado
Moderador
![[Avatar]](/images/avatar/110eec23201d80e40d0c4a48954e2ff5.jpg)
Membro desde: 08/03/2004 17:19:35
Mensagens: 5174
Localização: Sydney - Australia
Offline
|
Questão complicada...
Eu pessoalmente odeio noems de pacotes longos e ilegíveis, e tenho que conviver com eles. A convenção da Sun é boa, mas acho que peca no tamanho que algo pode atingir, principalmente se você considerar que a maioria das emrpesas brasileiras (e de outros lugares do mundo) vai usar sufixos/prefixos como o '.br' a mais.
A idéia de manter <domínio de empresa>.<modulo> é boa, apesar de gerar pacotes grandes ela é um modo simples e precvisível. Se você conseguir abreviar o nome dos módulos, melhor ainda, apesar de que vários prefixos pequenos e vários prefixos grandes dá no mesmo: são horríveis. Mantenha o mínimo possível.
Note, entretanto, que você não precisa repetir uma estrutura de pacotes em cada módulo. Módulos que usem hierarquia de classes semelhantes devem utilizar pacotes genéricos de sua aplicação, como <domínio da empresa>.persistencia, ou <dominio de empresa>.conectores. Você também pode colocar classes em pacotes iguais em módulos se seu ConectorComCafeteiraWallita só é usado em um módulo, você pode mantê-lo em <dominio de empresa>.conectores, mesmo que seu fonte esteja junto aos fontes do módulo X (é um conector e apesar de ser usado hoje só no módulo X, não rpecisa ser acoplado á ele).
Já que estamos falando em padrões e arquiteturas, o conceito de módulo é um pouco confuso, e guarda muita carga de arquiteturas cliente/servidor e/ou procedurais. Dê uma olhada na literatura de componentes
[]s
|
Phillip Calçado "Shoes"
http://fragmental.tw/
http://blog.fragmental.com.br/
"It is unfortunate that much of what is called 'object-oriented programming today is simply old style programming with fancier constructs." - Alan Kay |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 16/11/2004 13:19:39
|
Luca
Moderador
![[Avatar]](/images/avatar/17e62166fc8586dfa4d1bc0e1742c08b.jpg)
Membro desde: 06/09/2002 14:30:10
Mensagens: 5810
Localização: São Paulo/SP ou Paraty/RJ
Offline
|
Olá
Não use prefixo br.com para todos os seus pacotes. Isto foi uma bobagem que um cara da Sun escreveu e um monte de gente segue copiando sem pensar. Apenas use nome_do_projeto como prefixo ou quando muito nome_da_empresa.nome_do_projeto como prefixo.
[]s
Luca
|
Dare Obasanjo (Program Manager at Microsoft)
"The folks I know from across the industry who have to build large scale Web services on the Web today at Google, Yahoo!, Facebook, Windows Live, Amazon, etc are using RESTful Web services. The only times I encounter someone with good things to say about WS-* is if it is their job to pimp these technologies or they have already "invested" in WS-* and want to defend that investment."
CEP, JMS, JMX e coisas afins (ou não)
http://lucabastos.blogspot.com/ |
|
|
 |
|
|
|
|