Introdução para JSF 2.0

      Com o decorrer dos tempos vieram muitos conceitos, novas técnicas, tecnologias, metodologias, etc. Mas apesar de tantas mudanças uma coisa não mudou, a importação da interação do sistema com o seu usuário. Não tem jeito, o usuário final mesmo sendo visto como o inimigo número um do programador. é o púbico alvo do sistema. Fazer um sistema amigável, user friendly, é um grande diferencial para um sistema, ou seja, é o que faz ganhar um cliente, ganhar um usuário, ganha pão, etc. Afinal é pela tela que o usuário se interage com o sistema é na janela que o usuário vai “gostar” de usar-lo ou não. É muito semelhante, por exemplo, aos carros da figura 1. Qual você usuária ? Provavelmente será o mais bonito, mesmo se eu disser que o carro feio possui o motor mais rápido do mundo. E isso acontece de forma similar a tela do seu sistema, o cliente não quer saber quão rápido é o seu sistema ou qual tecnologia você está utilizando, mas se é belo ou não. No entanto não adianta fazer um sistema muito bonito se ele não funciona corretamente, dai a necessidade de dividir e conquistar o seu sistema, ou seja, separar a parte lógica da parte visual do seu sistema e é para isso que suja o padrão MVC que basicamente tem o objetivo de dividir a parte lógica do visual.  

Figura 1: Você escolheria o carro da direita porque é mais rápido ?
      E com esse objetivo eis que surge o Java Server Faces, o jsf, o seu objetivo é estar desenvolvendo aplicações web, vale citar que ele é um framework MVC, ou seja, é uma ferramenta que divide a parte lógica do visual do seu sistema. Para a parte visual ele consegue integrar com diversas tecnologias existentes no mercado é o caso do css, ajax, html 5, jquery etc.
    Para parte lógica realizar uma chamada em java acontece de maneira bem simples, observando a figura 2 se verifica que nada mais é do que chamadas para atributos e métodos de um objeto java. Se observa que a classe possui duas anotações:
    @ManageBean: Essa anotação indica que essa classe é um bean gerenciado
    @ApplicationScopped: Essa anotação indica o escopo do seu objeto em jsf.
Figura 2: Codigo java e JSF
     Falando em escopo, o escopo nada mais é do que o tempo de vida e morte do seu objeto, ou seja quando ele será criado e destruído pelo jsf, dentre esses escopo podemos destacar:
  • Escopo de Aplicação: Seu tempo de vida é igual a da aplicação, em outras palavras, inicia quando a aplicação inicia e morre junto com a aplicação.
  • Escopo de Sessão: Inicia e morre junto com a sessão criada pelo usuário
  • Escopo de visão: Seu tempo de vida é igual de uma página
  • Escopo de Request: Criado quando é feita uma requisição e morre após ter respondida.
     Como nas suas páginas não vão objetos java diretamente, indo apenas texto, é importante que você informe qual texto vai para a tela (html, xhtml, jsp, etc.) e como recuperá-lo como objeto java. Uma prática muito comum é somente enviar o id e quando reconstruir o objeto a partir do banco de dados.
Em uma interação com o usuário é importante que você impeça que o usuário realize atividades perigosas em seu sistema. É o caso de um usuário colocar letras no campo idade ou mesmo que ele coloque apenas número coloque 1500 anos já que ele não terá essa idade. No JSF você consegue fazer isso de algumas formas duas delas é a partir do bean validator ou criar uma classe que implemente validador.
     Uma informação útil na parte de visão é que o jsf te ajuda a economizar tempo, manutenção rápida além de prevenir futuras dores de cabeça. É o caso do faclets e do composite components.
Nessa apresentação foi falado que tanto a interface quanto o seu funcionamento é importante para o software e nós como desenvolvedores precisamos estar atentos para isso. Com isso foi apresentando o Java Server Faces que é um framework java com MVC, te ajudando a separar a interface com da regra de negócios.
Link:

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s