Arquitetura e Design de Projetos Java
Por Paulo Silveira em 01/08/07Hoje em dia são tantos os design patterns, padrões, frameworks e boas práticas, fica confuso tomar uma decisão. Como devemos desenhar nossas classes? Usar herança ou composição? Injeção de dependências? Webservices, RMI ou um simples arquivo XML? JDBC, JPA ou Hibernate? Devo usar EJB? Quando preciso e como faço um cluster?
Depois de um longo preparo da ementa, exercício e de como abordar tantos tópicos, trazemos a público um novo treinamento, o FJ-91, focado em arquitetura e design de projetos Java. O treinamento passa pelo uso correto da orientação a objetos, design de classes (patterns, domain driven design, componentização), frameworks e especificações, além de Web 2.0 e SOA.

Os exercícios são apresentados de uma maneira bem diferente: fazemos checkout de inúmeros projetos construídos para este treinamento, com o objetivo de analisar o código, debater, melhorar, e testar os diferentes frameworks e arquiteturas. Desde exercícios simples como trocar herança por composição, até rodar uma aplicação com EJB em cluster. Além de conhecer muitos dos frameworks e novas tecnologias, o intuito é que as pessoas saiam com uma capacitade crítica aguçada para uma tomada de decisão.
Apesar de não ser o foco, cada capítulo apresenta testes simulados para a certificação Sun Certified Enterprise Architect, e também exercícios de modelagem e debates sobre as decisões tomadas, passando pelas três etapas da SCEA. Apesar dessa certificação ser bem antiga e ter um conteúdo ultrapassado em alguns quesitos, os outros tópicos abordados pelo treinamento estão bem mais próximos do Java EE 5.0, o que o torna qualificado para uma possível atualização da prova.
Ao final do treinamento ainda há um capítulo dedicado a tópicos sobre desenvolvimento e metodologias. Alguns papers clássicos são debatidos, como o Silver Bullet e o Mythical Man Month, além dos testes unitários e de aceitação. Ufa! 40 horas de muito trabalho.
Interessante Paulo. Com certeza esse curso tem muito a agregar.
Só por curiosidade, quem vai ministrar esse curso?
[]´s Carlos
Comment by Carlos (KissDemon GUJ) — August 1, 2007 @ 4:44 pm
Oi Carlos! Eu que vou ministrar esse treinamento, inclusive ja há turma aberta amrcada, além de duas turmas que logo ministraremos em uma empresa.
Comment by Paulo Silveira — August 1, 2007 @ 10:05 pm
Poxa parabens,
Fiquei com vontade de fazer esse curso!
Comment by Antonio Kantek — August 2, 2007 @ 1:11 pm
Curso aparenta ser muito bom, parabéns! Se tivesse um curso desses onde vivo (João Pessoa/PB), já estaria matriculado
Comment by Daniel Abella — August 6, 2007 @ 2:08 am
Que tal programar este treinamento aos sábados ?
Seria muito bom.
Grato,
Garcia.
Comment by Alexandre L. Garcia — August 22, 2007 @ 8:13 am
Oi Paulo,
o curso parece bem legal, pena que SP fica longe de casa…
abraço
Comment by Ricardo — September 3, 2007 @ 8:39 pm
Olha, estou sofrendo mto com uma busca na WEB e quando achava que tinha tirando uma dúvida, vcs a colocam de volta.
Acabei de ler em um blog bastante famoso e de confiança que JPA só é a base para a criação de uma implementação e esta sim pode ser usada como uma camada de persistencia. Em outras palavras, o JPA da SUN precisa de um provedor, e a SUN não tem um provedor. Os provedores que conheço são TopLink e Hibernate.
Agora o que vcs me colocaram nesse tópico para me colocar dúvida: “JDBC, JPA ou Hibernate”. Mas Hibernate não é uma implementação/provedor de JPA? Como eu posso escolher JPA ao invés de Hibernate?
Por favor… já estou ficando louco!!!
Obrigado.
Comment by Rafael — January 6, 2008 @ 2:20 pm
Voce pode escolher por usar o Hibernate diretamente, utilizando a API da sua interface Session, como sempre foi feito antes da existência da JPA, e com isso voce vai pode fazer coisas que a JPA nao possibilita, como usar StatelessSession e a Criteria. Utilizar o Hibernate atraves da API da JPA vai te limitar em alguns recursos, mas você vai ganhar independência de fabricante. Então a questão é analisar esse trade off e escolher o que é melhor pra você.
Comment by Paulo Silveira — January 6, 2008 @ 2:27 pm
Os cursos caelum são sempre de altissimo nivel.
Mas fiquei bastante curioso de como modelar usando os desenhos da foto
Ficou muito legal (não estou discutindo implementação atraves destes desenho o que nem sei c é possivel) e bacana de visualizar.
Qual o programa grafico utilizado?
muito obrigado
abs
Comment by sobrinho — August 3, 2008 @ 8:41 am
Pena que a Caelum nao tem nada aqui por Curitiba….;-(
Comment by Marcao — November 21, 2008 @ 3:54 am