tdc 2013 sp | arquitetura java: preciso de um framework, mas qual usar?
TRANSCRIPT
![Page 1: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/1.jpg)
Preciso de um Framework, mas Preciso de um Framework, mas qual usar? qual usar? Hébert Coelho de Oliveira
![Page 2: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/2.jpg)
About me• Pós: MIT em Engenharia de Software com Java
• Analista Desenvolvedor Sênior: 10 anos+
• Professor de Java para Pós Graduação
• Criador do blog uaiHebert.com
• Certificações: SCJP, SCWCD, OCBCD, OCJPAD
• Livro em andamento: JPA Eficaz
• Revisor do Livro: Primefaces CookBook
• Criador do EasyCriteria
![Page 3: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/3.jpg)
![Page 4: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/4.jpg)
MinhocaMinhoca
![Page 5: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/5.jpg)
O que veremos:O que veremos:Servidores
IDEs
View
Business
Infra
![Page 6: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/6.jpg)
ServidoresServidoresComo escolher o melhor servidor?◦ Material de pesquisa◦ Facilidade de Configuração◦ Necessidade de “re-deploy”◦ Preparo do artefato◦ Cuidado com “blogs”◦ Implementações que podem dar problema
(JSF)◦ Capacidade
![Page 7: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/7.jpg)
Servidores - BenchmarkServidores - Benchmark http://antoniogoncalves.org/2011/10/20/o-java-ee-6-application-servers-where-art-thou/
http://hwellmann.blogspot.com.br/2011/06/java-ee-6-server-comparison.html
![Page 8: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/8.jpg)
ServidoresServidores Tomcat Jetty
JBoss Glassfish TomEE
Weblogic WebSphere
![Page 9: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/9.jpg)
IDEsIDEsEclipse
MyEclipse
Netbeans
Intellij
![Page 10: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/10.jpg)
ViewViewCuidado apenas com prática
Cuidado com “blogs”
Entenda a tecnologia
![Page 11: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/11.jpg)
ViewView
Action Based – (Push-Based)
Component Based – (Pull-Based)
![Page 12: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/12.jpg)
View – Action Based View – Action Based
Código Página
![Page 13: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/13.jpg)
View – Component BasedView – Component Based
Código Página
![Page 14: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/14.jpg)
View – Action x ComponentView – Action x ComponentAction◦ Maior controle do HTML◦ Menor curva de aprendizado◦ Cada ação geraria uma configuração específica
Component◦ Bom para reutilizar código/módulos◦ Design inicial agradável◦ Curva de aprendizado◦ Memória do servidor
![Page 15: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/15.jpg)
View – Struts 1 [AB]View – Struts 1 [AB]Vantagens Desvantagens
Configuração centralizada XML enorme
Formulários Grande curva de aprendizado
Tags Beans/HTML Péssima documentação
Validações Não é transparente
Dá foco ao MVC Abordagem rígida
Muito encontrado no mercado
![Page 16: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/16.jpg)
View – Struts 2 [AB]View – Struts 2 [AB]Vantagens Desvantagens
Fácil de Testar Compatibilidade
Suporte a Ajax Grande curva de aprendizado
Suporte a Anotações Documentação limitada
Diversas views Não é transparente
Plugins
![Page 17: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/17.jpg)
View – VRaptor [AB]View – VRaptor [AB]Vantagens Desvantagens
Fácil de Configurar Não tem muitas vagas
Integrações com outros frameworks
Alguns erros estranhos ainda acontecem
Bom suporte (GUJ)
![Page 18: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/18.jpg)
View – Stripes [AB]View – Stripes [AB]Vantagens Desvantagens
Não necessita de xml Comunidade pequena
Boa documentação Tem menos funcionalidades
Membros da comunidade são ativos
![Page 19: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/19.jpg)
View – JSF [CB]View – JSF [CB]Vantagens Desvantagens
Fácil de começar a usar Difícil de evoluir
Bibliotecas de ótima qualidade
Longa curva de aprendizado
Modularização
i18n – imagens
Front End oficial
![Page 20: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/20.jpg)
View – Wicket [CB]View – Wicket [CB]Vantagens Desvantagens
Boa documentação Bastante atenção as suas regras
Frequentemente atualizado Atualizações costumam quebrar código
Programadores experientes terão mais facilidade
Programadores inexperientes terão mais dificuldade
Pode levar a códigos de extrema complexidade
![Page 21: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/21.jpg)
View – Tapestry [CB]View – Tapestry [CB]Vantagens Desvantagens
Código bem próximo a um HTML
Documentação não muito detalhada
Boa produtividade para quem tem bom conhecimento
Curva de aprendizado bem inclinada
A cada nova versão, muitas funcionalidades estarão disponíveis
Upgrades demoram a chegar
![Page 22: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/22.jpg)
View – GWT [CB]View – GWT [CB]Vantagens Desvantagens
Garantia de compatibilidade do JavaScript
Poucos livros sobre o assunto
Grande empresa como investidora
A compilação de Java para JavaScript é lenta
Bom suporte de IDE Mais códigos do que JQuery
Integra com JUnit / JMock / TestNG
![Page 23: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/23.jpg)
Business - EJBBusiness - EJBVantagens Desvantagens
Isolar a regra de negócio Especificação grande
Proteger em Firewall Extra Alta complexidade
Concurrent Access and Transaction Support
Muita chance de criar soluções complexas e que tenha um alto custo
JAAS
Pool/Caching
Clusterização
![Page 24: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/24.jpg)
PersistênciaPersistência
JDBC
JPA
MyBatis
![Page 25: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/25.jpg)
Build ToolsBuild ToolsTem que ter?
Ant
Maven◦ JRebel
Gradle
![Page 26: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/26.jpg)
Full stackFull stackSpring
JBoss Seam
OBS.: Guice
![Page 27: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/27.jpg)
JRebel Reports - TecnologiasJRebel Reports - Tecnologias http://zeroturnaround.com/rebellabs/developer-productivity-report-2012-
java-tools-tech-devs-and-data/
![Page 28: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/28.jpg)
JRebel Reports - IDEJRebel Reports - IDE
![Page 29: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/29.jpg)
JRebel Reports – Build ToolJRebel Reports – Build Tool
![Page 30: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/30.jpg)
JRebel Reports – ServerJRebel Reports – Server
![Page 31: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/31.jpg)
JRebel JRebel ReportsReportsViewView
![Page 32: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/32.jpg)
Domain-Driven FrameworkDomain-Driven Frameworkopenxava
http://www.openxava.org/Isis
http://isis.apache.org/Roma Framework (Spring IOC)
http://www.romaframework.org/Tynamo (Tapestry)
http://tynamo.org/
![Page 33: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/33.jpg)
Domain-Driven FrameworkDomain-Driven FrameworkNexopen (Spring)
http://nexopen.sourceforge.net/reference/0.4.0/html_single/
jmatter http://jmatter.org/
Vraptor e Spring ROO
![Page 34: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/34.jpg)
Últimas ConsideraçõesÚltimas ConsideraçõesTécnicosTécnicosSuporte ao AjaxBookmark e RESTful URLValidação de dadosCapacidade de testesComo trata Submissão/RedirectFacilidades de i18nScaffolding
![Page 35: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/35.jpg)
Últimas ConsideraçõesÚltimas ConsideraçõesSociais/ArquiteturaSociais/ArquiteturaEstá sendo muito utilizado?Como está a comunidade?Para aprender, tem material?Como é sua arquitetura?O código de um protótipo, é agradável?
Fácil? Complexo?Convenção sobre Configuração
![Page 36: TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?](https://reader034.vdocuments.mx/reader034/viewer/2022042614/559895d61a28ab44428b45da/html5/thumbnails/36.jpg)
Dúvidas? ContatoDúvidas? Contatohttp://uaihebert.com
http://cv.uaihebert.com