Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

5 técnicas para acelerar o desenvolvimento e reduzir Bugs em aplicações WEB

451 views

Published on

Desenvolva as técnicas Java necessárias para ter um projeto WEB de qualidade e evitar Bugs. Acelere o desenvolvimento, reuse componentes, use os recursos do framework JSF!

Published in: Software
  • Be the first to comment

5 técnicas para acelerar o desenvolvimento e reduzir Bugs em aplicações WEB

  1. 1. Java WEB 5 Técnicas para acelerar o desenvolvimento e reduzir Bugs em aplicações WEB 1
  2. 2. E-Book gratuito - NoBugsProject http://eepurl.com/cCGHQD Ou 2
  3. 3. Vamos usar qual tecnologia? 3
  4. 4. Desvantagens do JSF • Usa um pouco mais de recursos de performance • Impossibilita reuso de protótipo • Abstrai muito a parte Web • Mantém muito retro compatibilidade • Não é tão flexível quanto outros frameworks • Ignora paradigma REST 4
  5. 5. Vantagens do JSF • Produtividade alta • Faz parte da especificação Java EE • Existem muitos profissionais que conhecem o JSF • É muito parecido com HTML na parte da view • Não é tão lento como pensam se usado da forma certa • Documentação rica • Muitas implementações da especificação JSF • Muitas extensões como por exemplo o Primefaces, Trinidad, Richfaces.. • Fácil integração com os frameworks mais utilizados como Spring, especificações JPA, EJB, etc... • Está em segundo lugar dos frameworks mais usados no mundo perdendo somente para o Spring MVC 5
  6. 6. Component Based X Action Based Component Based: JSF Tapestry Wicket Action Based: Spring MVC Apache Struts Vraptor Grails 6
  7. 7. Implementações do JSF • Mojarra que é a implementação da SUN (GlassFish), também (mais) conhecida como JSF RI. • Myfaces como a implementação open source da Apache • ADF Faces da Oracle • A implementação da BEA (já vem embutido WebLogic) • A implementação da IBM (já vem embutido WebSphere) • Backbase • NetAdvantage 7
  8. 8. Extensões do JSF Componentes: • PrimeFaces - https://www.primefaces.org/showcase • RichFaces - http://showcase.richfaces.org/ • ICEfaces - http://icefaces-showcase.icesoft.org/showcase.jsf • Omnifaces - http://showcase.omnifaces.org/ • Templates • Facelets 8
  9. 9. Fases do JSF 9
  10. 10. Restore View Phase Essa fase começa quando uma requisição de uma página JSF é feita através de um link ou botão clicado. Durante esta fase, a implementação JSF constrói a “view” da página em manipulações de eventos, validadores que são salvos na instância do FacesContext. É permitido resgatar todas as informações necessárias para processar uma simples requisição. Podemos ter acesso aos componentes do XHTML através da classe UIViewRoot, também temos as classes HtmlForm, HtmlOutputText, HtmlCommandButton, etc.. 10
  11. 11. Apply Request Values Phase Nessa fase, a árvore de componentes da página é restaurada com os valores que foram enviados na requisição. Esses valores são obtidos através da requisição, que é aplicada ao componente em memória e não à propriedade da classe Bean para a qual o componente aponta. Existe um cenário em que quando um componente estiver configurado com o atributo immediate=”true”, o valor dele será diretamente ligado à propriedade na classe Bean. Esse atributo tem a característica de tornar a aplicação imediata dos valores na classe Bean para o componente. 11
  12. 12. Process Validations Phase Durante essa fase, o JSF executa todos os validadores e valores registrados que possuem a configuração do campo com o atributo required=”true”, validators.. 12
  13. 13. Update Model Values Phase 13 Nessa fase, os valores já estão validados e registrados nos componentes que serão atribuídos à respectiva propriedade na classe Bean. Esse processo envolve conversores dos tipos de dados, como por exemplo, conversores personalizados ou data e número.
  14. 14. Invoke Application Phase 14 Nessa fase, o JSF manipula qualquer nível de evento da aplicação, desde o envio de um formulário ou chamada para outra página através de um link. Depois que todos os valores já estarem validados, convertidos e atribuídos para as propriedades da classe Bean, se for o caso, o JSF adicionará o método da classe Bean que adicionou a requisição. Geralmente são eventos que retornam uma String, que está associada a uma navegação de uma página dentro da aplicação.
  15. 15. Render Response Phase 15 Por ser a fase final, é exigida que quando a página for construída e devolvida para o browser, o JSF solicite que cada componente de tela que têm suas propriedades, comportamentos e forma, faça a geração do próprio HTML.
  16. 16. Quais são as 5 técnicas? 16 1. Manipulação efetiva das fases do JSF 2. Uso efetivo de Ajax nas telas JSF 3. Uso efetivo de escopos do JSF 4. Reusar componentes prontos 5. Usar Facelets
  17. 17. Code Time Agora vamos ver o código! 17
  18. 18. Contato 18 Dúvidas rafacdelnero@gmail.com GitHub https://github.com/rafadelnero/presentations Twitter https://twitter.com/RafaDelNero Linkedin https://br.linkedin.com/in/rafadelnero Android App https://play.google.com/store/apps/details?id=br.com.mediaUniversidadesAndroid

×