TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor em .Net Core
TDC 2013 SP | Arquitetura Java: Preciso de um Framework, mas qual usar?
1. Preciso de um Framework, masPreciso de um Framework, mas
qual usar?qual usar?
Hébert Coelho de Oliveira
2. 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
5. O que veremos:O que veremos:
Servidores
IDEs
View
Business
Infra
6. ServidoresServidores
Como 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
14. View – Action x ComponentView – Action x Component
Action
◦ 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
15. 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
16. 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
17. 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)
18. 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
19. 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
20. 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
21. 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
22. 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
23. Business - EJBBusiness - EJB
Vantagens 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