Organização Bean.java

6 respostas
fabiopagoti

Olá a todos, tenho desenvolvido um projeto em jsp e como não tenho experiência no desenvolvimento de algo grande, qualquer código que tenho em mente jogo ele no arquivo [color=red]bean.java[/color]. O projeto está bem no começo e o bean já ultrapassou as 1500 linhas (eu acho isso muito, ou não é?) lá tem código para transição de telas (que retornam strings para o faces-config), códigos para buscas, cadastros, consultas no bdd e afins…

Eis o que gostaria de saber:
1 - O que/que tipo de código devo colocar no bean?
2 - É possível dividir o bean em vários arquivos? Caso sim, como fazê-lo e que cuidados devo tomar?
3 - Como gerenciar esses arquivos de tal forma que o problema seja evitado futuramente?

Obrigado. Espero não ter faltado com informações na minha dúvida

6 Respostas

Fox_McCloud

fabiopagoti:
Olá a todos, tenho desenvolvido um projeto em jsp e como não tenho experiência no desenvolvimento de algo grande, qualquer código que tenho em mente jogo ele no arquivo [color=red]bean.java[/color]. O projeto está bem no começo e o bean já ultrapassou as 1500 linhas (eu acho isso muito, ou não é?) lá tem código para transição de telas (que retornam strings para o faces-config), códigos para buscas, cadastros, consultas no bdd e afins…

Eis o que gostaria de saber:
1 - O que/que tipo de código devo colocar no bean?
2 - É possível dividir o bean em vários arquivos? Caso sim, como fazê-lo e que cuidados devo tomar?
3 - Como gerenciar esses arquivos de tal forma que o problema seja evitado futuramente?

Obrigado. Espero não ter faltado com informações na minha dúvida


Ahuahuahuahuahua!

:lol:

Grande? é um MONSTRO!!!

Desenvolvedores ortodoxos nunca deixam suas classes passarem de 50 linhas de código!

Não sei se você consegue refatorar o seu sistema a essas alturas. Tudo precisa ser bem pensado desde o início e da modelagem, criar camadas, uma para regras de negócio, uma para persistência, dar uma olhada em design patterns para ver como organizar os módulos da sua aplicação, e até mesmo orientação a objetos para saber como dividir o seu sistema em classes, quais classes, etc…

Você precisa ter tudo isso em mente desde o início do projeto, que é o que se chama de “criar uma arquitetura”… colocar cada coisa no seu devido lugar…!

Tem coisa que não dá pra fazer se o seu projeto é um “senta e manda bala” de mais de 1500 linhas… vai demorar mais pra refatorar isso do que pra fazer direito do zero…

Hehehe…

:stuck_out_tongue:

fabiopagoti

bem,estava pensando… é comum/útil eu usar um bean só para as transferências de tela? isso sim é o que está tornando meu meu bean grande

tnaires

Olá Fábio.

Um bom começo pra refatorar seu bean é escrever em algum lugar ( num papel, por exemplo ) todas as responsabilidades que sua classe faz. Você já enumerou algumas:

Depois, veja como você pode escrever classes separadas para tratar de cada uma dessas responsabilidades individualmente.

Abraços

Fox_McCloud

Comum infelizmente até é!

Mas só vai atrapalhar a sua vida, porque a essas alturas já deve estar difícil de localizar determinados atributos, dar manutenção ou expandir o seu código!

Tendo uma boa estrutura de pacotes você pode criar um bean para cada form, isso torna muito mais fácil dar manutenção a tudo o que é associado àquela funcionalidade do sistema!

Não tenha medo da quantidade de arquivos, depois vai tudo pra um único .jar ou .war ou .ear… Se o seu sistema tiver milhões de arquivos, mas dando um Ctrl+Shift+T ou Ctrl+Shift+R no Eclipse e digitando o nome da funcionalidade você facilmente localizar as coisas relacionadas àquela funcionalidade (beans, forms, actions, businesses, EJBs, etc…), então você verá que fica muito fácil dar manutenção a um ponto específico ou isolar um erro em uma funcionalidade para corrigi-lo!

fabiopagoti

obrigado!!

mesmo se demorar… esse tempo é compensado na boa organização…
[trocadilho]e agora é hora de transformar o projeto numa verdadeira feijoada![/trocadilho]
obrigado pela ajuda!

Fox_McCloud

Ah, o que dá sim pra fazer é otimizar o seu sistema fazendo uso correto de orientação a objetos e design patterns! Se uma das coisas mais poderosas do Java é a reutilização, use-a!

Alguns (poucos) atributos comuns à maioria dos forms podem estar em um CommonBean, outros beans podem extendê-lo, esse tipo de coisa… daí você consegue até reduzir o número de classes sem perder funcionalidade…

É só um exemplo, é preciso estudar e exercitar isso pra pegar o jeito!

Criado 17 de julho de 2008
Ultima resposta 17 de jul. de 2008
Respostas 6
Participantes 3