27/05/2009
JSF 2.0
1. Desde quando você está usando JSF?
Desenvolvo aplicações web usando JSF desde 2007.
2. Quais ferramentas e frameworks você utiliza? (RichFaces, Facelets... )
Meus primeiros 2 projetos usaram
JSF 1.1
e Apache MyFaces. Em seguida adotei
as melhorias do JSF 1.2 nos projetos e conheci o Richfaces. Esta dupla atende bem as necessidades de apresentação dos
projetos que tenho desenvolvido.
3. Como você está sentindo a adoção de JSF em Florianópolis e região?
Madura. Florianópolis tem muitos desenvolvedores que aprenderam as boas práticas de
desenvolvimento corporativo em Java usando Apache Struts. Ali reconheceram como o
JEE Blue Prints poderia ser usado na prática. Quem já adotou JSF
o fez naturalmente, como opção evolutiva às propostas do Struts.
Quem ainda não adotou não teve oportunidade, ou porque não teve tempo de estudar e
compreender o JSF ou porque seus projetos estão em produção e rodando bem. Sabemos que
em cenários como esses é mais complicado justificar uma evolução tecnológica do
produto. Algo positivo no mercado daqui também é o fato de que os frameworks de
apresentação marginais costumam ser avaliados. Em outras palavras, a adoção do JSF
não é feita com o único argumento de que é uma especificação da
JCP mas porque possui
características que se sobressaem se comparado com as demais alternativas.
Muitas que em um primeiro momento aparentam inclusive ser mais fáceis.
4. Quais foram as principais novidades de JSF 2?
A versão 2 do JSF lembra muito a versão 2 do JSP. Vem pra consolidar os conceitos
da primeira versão e tornar o desenvolvimento ainda mais produtivo, fácil e padronizado.
As principais novidades estão bem de acordo com esta proposta: componentes visuais mais
fáceis de desenvolver, suporte a AJAX, melhor compatibilidade entre bibliotecas de
componentes, configuração minimizada e linguagem de descrição de páginas (PDL/VDL).
5. Qual recurso você mais gostou?
A nova proposta para criação de componentes visuais lembra muito o surgimento de
Tag Files no JSP 2.0.
E por isso é meu recurso favorito. Por mais que as bibliotecas tragam em suas novas
versões novos componentes e melhorias significativas nos já disponibilizados,
é comum a necessidade de combinarmos alguns destes para criarmos solução interativas
em nossas aplicações. E isso ficou muito mais fácil de fazer agora! Logo depois
destaco a padronização do local em que os recursos usados pelas páginas e pelos
componentes devem ser colocados (META-INF/resources) pois traz muitas facilidades
interessantes.
6. Quais blogs, portais e foruns você recomenda para quem quer ficar atualizado?
Gosto de acompanhar estes 3:
7. Na sua opinião, quais são as alternativas para quem quer desenvolver
aplicações Web/HTML com Java e não quer utilizar JSF?
Esta pergunta não é simples de responder por um detalhe importante: JSF integra
com várias tecnologias e não renderiza apenas HTML. A resposta depende da necessidade
técnica identificada pelo arquiteto da aplicação. Em aplicações que a equipe tem
conhecimento de HTML/Javascript/AJAX suficiente para criar seus próprios componentes
interativos e possui um designer gráfico disponível para trabalhar a apresentação,
o uso de Struts 1 pode ser mais efetivo que o do JSF. Em aplicações muito focadas em
listagens e impressão, o uso direto da API de Servlets e de JSP casada a uma
arquitetura fundamentada em padrões de projeto EE também pode ser uma opcão mais
produtiva do que adotar JSF ou Struts. Na maioria das soluções, no entanto,
JSF consegue apresentar um bom conjunto de características favoráveis. Ampla
comunidade de usuários, farta lista de referências para aprendizado e boas opções
de bibliotecas de componentes livres e pagas são apenas 3 delas.
8. Dicas finais
Vale a pena reconhecer as boas práticas amadurecidas no JSF, lendo artigos sobre
esta especificação, baixando a implementação de referência e implementando suas
próprias provas de conceitos, pessoais mesmo.
Vale a pena porque é uma solução criada pelo mercado e para o mercado: os
principais recursos disponibilizados na versão 2 foram identificados em uma votação
que toda a comunidade teve oportunidade de participar. E logo que ficar claro que a
proposta é bacana, vale a pena continuar acompanhando a situação da especificação
314 e fazendo comentários para que ela seja ainda melhor!
Alguns pontos de partida: