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:
Código exemplo do JSF: https://github.com/otaviojava/jsftdc2012/
Nenhum comentário:
Postar um comentário