Documente Academic
Documente Profesional
Documente Cultură
DESENVOLVIMENTO DE RIAs
RESUMO:
Com o avanço das tecnologias voltadas para a internet, foi possível explorar funcionalidades antes
disponíveis somente em aplicações ditas “desktop”, trazendo-as ao ambiente da rede global de
computadores, onde a utilização destas pode ocorrer em escala mundial. Muitas tecnologias
surgiram para tentar solucionar problemas emergentes a cada momento. Uma das mais bem
sucedidas foi a linguagem Java, a qual é uma linguagem de programação simples, orientada a
objetos e segura. O uso de frameworks de componentes vem a aumentar a produtividade de
aplicações, reduzindo custos e tempo de desenvolvimento. O presente trabalho vem a realizar um
estudo comparativo entre os principais frameworks para desenvolvimento de aplicações ricas para a
internet (RIAs) através da linguagem Java.
1. INTRODUÇÃO
Com o avanço das tecnologias voltadas para a internet, foi possível explorar funcionalidades
antes disponíveis somente em aplicações ditas “desktop”, trazendo-as ao ambiente da rede global
de computadores, onde a utilização destas pode ocorrer em escala mundial. Aplicações para internet
que possuem estas características são denominadas RIAs (Rich Internet Applications).
(MACROMEDIA, 2010)
3Padrão arquitetural que provê um ‘template’ extensível para aplicações dentro de um certo domínio. (BOOCH apud SPARLING,
2000)
No contexto de programação voltada para a internet, a linguagem Java vem a possuir papel
de grande importância por ser uma linguagem de programação simples, orientada a objetos e
segura. Neste espaço figuram inúmeros frameworks voltados a aplicação utilizando-se da
linguagem Java como Vaadin, e JSF. Sendo assim, o presente trabalho vem realizar um estudo
comparativo entre os principais frameworks para desenvolvimento de RIAs através da linguagem
Java.
2. FRAMEWORKS
2.1 Vaadin
4 Javascript: linguagem de programação executada através de um navegador web. Utilizada principalmente para
interação com páginas web.
5 XML (eXtensible Markup Language): recomendação da W3C para gerar linguagens de marcação para necessidades
especiais.
A aplicação do padrão arquitetural MVC6 no desenvolvimento de aplicações web trouxe
inúmeras vantagens como facilidade de implementação e maior reutilização de código. Este
modelo foi aplicado a linguagem Java através da criação de uma especificação oficial MVC para a
mesma. A comunidade Java através do JCP (Java Community Process), criou um pedido de
especificação denominado JSR 000127 (JCP, 2010) para atender esta necessidade. Desta forma foi
definido o modelo conhecido como Java Server Faces (JSF).
JSF é uma tecnologia que incorpora características de um framework MVC para web e de
um modelo de interfaces gráficas baseada em eventos.
A especificação JSF foi criada para prover um framework de programação confiável e
escalável, construído em sobre a tecnologia Java. Mesmo que estes requisitos sejam fundamentais,
o JSF precisava ter ainda uma outra característica, a de ser bastante produtivo. Os componentes UI 7
fornecem a base para esta produtividade.
O JSF definiu um modelo de componentes, visando facilidade de uso e produtividade. Entre
os modelos que mais se destacam estão as bibliotecas IceFaces e RichFaces.
2.3 ICEFaces
É um framework que trabalha com a tecnologia Ajax sobre aplicativos JSF, com ciclo de
vida, validação, gestão dos recursos estáticos e dinâmicos fornecendo assim, uma forte integração
de componentes para aplicações web.
RichFaces fornece dois modelos de bibliotecas para o desenvolvedor: a Core Ajax a qual
define algumas funcionalidades Ajax em páginas existentes permitindo que toda ela esteja com
suporte Ajax que sincronizam os componentes de acordo com os eventos disparados; e UI a qual
são fornece vários modelos de componentes visuais.
RichFaces possui um diferencial em relação aos demais frameworks por permitir uma
abordagem de Ajax orientada por página ao invés, do mais comum, que é orientado a componente
(RICHFACES, 2010). Este diferencial permite que seja definido um evento que faça uma requisição
Ajax em particular e podem ser definidas áreas nesta página que devem ser sincronizadas com a
árvore de componentes JSF, ao contrário da outra abordagem, no qual tudo é centralizado no
componente.
6Model-view-controller (MVC) : padrão de arquitetura de software que visa a separar a lógica de negócio da lógica de
apresentação, permitindo o desenvolvimento, teste e manutenção isolados. (MVC,2010)
7UI (User Interface - interface do usuário): é um conjunto de características com as quais pessoas (usuários), interagem
com o sistema.
3. ESTUDO COMPARATIVO
1. Facilidade de uso.
2. Uso de Ajax.
Icefaces e RichFaces utilizam o modelo Ajax para comunicação. Vaadin também utiliza
Ajax para comunicação, mas possui uma pequena diferença frente a estes frameworks: a interface
do Vaadin é construída no próprio servidor e enviada para o cliente que é responsável em construir
os widgets 8 informados. Ou seja, se é necessário apresentar uma lista (componente combobox) na
tela contendo as informações de uma tabela, esta é preenchida no servidor e o Vaadin envia ao
cliente a ordem: crie um combobox com os dados informados. Vale observar que todo evento
lançado por um widget também é tratado no servidor.
Dentro deste item a análise ocorre de forma visual, tomando-se como parâmetro detalhes
dos principais componentes existentes nos frameworks analisados. Todos os componentes possuem
ótimo acabamento, porém Vaadin e IceFaces possuem uma aparência mais limpa e clara, ao
contrário de RichFaces os quais são mais simples, utilizando modelos tradicionais em cores mistas.
4. CONCLUSÃO
5. REFERÊNCIAS BIBLIOGRÁFICAS
9 JSP: tecnologia utilizada no desenvolvimento de aplicações para Web, similar às tecnologias Active Server Pages
(ASP) ou PHP
ICEFACES. ICEFaces.org. Disponível em <http://www.icefaces.org/main/resources/
documentation.iface>. Acesso em 18 de Agosto de 2010.