10.04.2014 Views

vraptor: o framework de aprendizado java web ... - Project Kenai

vraptor: o framework de aprendizado java web ... - Project Kenai

vraptor: o framework de aprendizado java web ... - Project Kenai

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

VRAPTOR: O FRAMEWORK DE APRENDIZADO JAVA WEB<br />

AUGUSTO BEVILAQUA<br />

RAFAEL CIRINO LACERDA<br />

SAULO ALMEIDA LIMA<br />

RESUMO<br />

Framework MVC Java voltado para facilitar o <strong>de</strong>senvolvimento <strong>de</strong> aplicações <strong>web</strong>,<br />

o VRaptor é uma opção aos <strong>de</strong>senvolvedores <strong>de</strong>vido à sua facilida<strong>de</strong> <strong>de</strong> <strong>aprendizado</strong><br />

e fácil configuração, além <strong>de</strong> ser gratuito e <strong>de</strong> código aberto (open source).<br />

ABSTRACT<br />

Java MVC <strong>framework</strong> <strong>de</strong>signed to facilitate the <strong>de</strong>velopment of <strong>web</strong> applications,<br />

"VRaptor” is an option for <strong>de</strong>velopers because of the fact that is easy to learn and<br />

setup, to be free and open source (open source).<br />

PALAVRAS-CHAVE:<br />

Framework; Java; open source; <strong>web</strong>; VRaptor.<br />

KEYWORDS<br />

Framework; Java; open source; <strong>web</strong>; VRaptor.


2<br />

1 INTRODUÇÃO<br />

Po<strong>de</strong>roso controlador MVC open source. É voltado para <strong>de</strong>senvolvimento ágil e <strong>de</strong> alta<br />

produtivida<strong>de</strong>. Implementa um controlador baseado no padrão Front Controller.<br />

É <strong>de</strong>senvolvido pela Caelum, mas disponível para uso geral. Além da própria Caelum, é<br />

usado em outros projetos (como o GUJ e o JForum) e por várias empresas. (CAELUM, A-<br />

POSTILA-FJ28)<br />

2 O DESENVOLVIMENTO<br />

As versões iniciais foram criadas por Alexandre Freire e Paulo Silveira quando ainda a-<br />

lunos do BCC no IME/USP para um projeto do <strong>de</strong>partamento <strong>de</strong> estatística. O projeto cresceu<br />

<strong>de</strong> forma contínua <strong>de</strong>s<strong>de</strong> então e, principalmente a partir da versão 2, vem influenciando significativamente<br />

a comunida<strong>de</strong> brasileira.<br />

Atualmente, é <strong>de</strong>senvolvido primariamente pela Caelum e utilizado por diversas entida<strong>de</strong>s,<br />

como a Agência Click, a Defferrari Informática, a IG Celular, a LocaWeb, o GUJ.com.br<br />

entre outros, como a própria Caelum com a utilização do <strong>framework</strong> na sala <strong>de</strong> aula em seus<br />

próprios cursos que ministra. (CCSL)<br />

A Caelum atua no mercado <strong>de</strong>s<strong>de</strong> 2002, <strong>de</strong>senvolvendo sistemas e prestando consultoria<br />

em diversas áreas, à luz sempre da plataforma Java. Foi fundada por profissionais que se encontraram<br />

no Brasil <strong>de</strong>pois <strong>de</strong> uma experiência na Alemanha e Itália, <strong>de</strong>senvolvendo sistemas<br />

<strong>de</strong> gran<strong>de</strong> porte com integração aos mais variados ERPs, além <strong>de</strong> oferecer cursos amplamente<br />

conhecido no meio acadêmico. (CAELUM)<br />

3 O FRAMEWORK<br />

O VRaptor 3 foca em simplicida<strong>de</strong> e, portanto, todas as funcionalida<strong>de</strong>s têm como primeira<br />

meta resolver o problema do programador da maneira menos intrusiva possível em seu<br />

código. Tanto para salvar, remover, buscar e atualizar ou ainda funcionalida<strong>de</strong>s que costumam<br />

ser mais complexas como upload e download <strong>de</strong> arquivos, resultados em formatos diferentes<br />

(xml, json, xhtml etc), tudo isso é feito através <strong>de</strong> funcionalida<strong>de</strong>s simples do VRaptor 3, que<br />

sempre procuram encapsular HttpServletRequest, Response, Session e toda a API do <strong>java</strong>x.servlet.<br />

(VRAPTOR, CAELUM)<br />

O VRaptor trabalha com a idéia <strong>de</strong> POJOs (Plain Old Java Objects) como componentes<br />

para executar as lógicas <strong>de</strong> negócio. (CAELUM, APOSTILA-FJ28)<br />

A idéia na utilização <strong>de</strong>sse <strong>framework</strong> é com a criação <strong>de</strong> objetos muito simples, com código<br />

Java comum, o <strong>framework</strong> entenda-o <strong>de</strong> maneira fácil. (CAELUM, APOSTILA-FJ28)<br />

Seus principais méritos são:<br />

<br />

Framework MVC Java para <strong>web</strong> focado em <strong>de</strong>senvolvimento rápido;


3<br />

<br />

<br />

Gran<strong>de</strong> comunida<strong>de</strong> <strong>de</strong> usuários e <strong>de</strong>senvolvedores;<br />

Ampla documentação disponível em Português.<br />

4 BENEFÍCIOS<br />

Os principais benefícios, segundo o site CAELUM, VRAPTOR são:<br />

4.1 ALTA PRODUTIVIDADE<br />

O VRaptor 3 é simples e intuitivo. On<strong>de</strong> o foco é atingir níveis altíssimos <strong>de</strong> produtivida<strong>de</strong><br />

com Java para <strong>web</strong>.<br />

4.2 CURVA DE APRENDIZADO<br />

Sua proposta é que em pouco tempo o usuário aprenda o necessário para iniciar o<br />

<strong>de</strong>senvolvimento.<br />

4.3 TESTABILIDADE<br />

Usando códigos modularizado e <strong>de</strong>sacoplado do VRaptor, a aplicação fica altamente<br />

testável e <strong>de</strong> fácil manutenção.<br />

4.4 ECONOMIA<br />

Com a facilida<strong>de</strong> no treinamento da equipe, a economia <strong>de</strong> horas <strong>de</strong> trabalho gerará<br />

alta produtivida<strong>de</strong> utilizando o VRaptor.<br />

4.5 FLEXIBILIDADE<br />

Po<strong>de</strong> ser integrado à projetos com qualquer outro <strong>framework</strong>, sem pren<strong>de</strong>r o <strong>de</strong>senvolvedor<br />

a nenhuma tecnologia específica.<br />

4.6 SOA E REST - READY<br />

Po<strong>de</strong>m ser feitas aplicações RESTful ou orientadas a serviço sem complicações,<br />

como se estivesse fazendo aplicações <strong>web</strong> normais.


4<br />

4.7 MELHORES PRÁTICAS DE DESENVOLVIMENTO<br />

Utilizando os conceitos <strong>de</strong> Injeção <strong>de</strong> Dependência, Inversão <strong>de</strong> Controle e PO-<br />

JOs, esse <strong>framework</strong> <strong>de</strong>ixa o código mais simples e testável.<br />

4.8 DOCUMENTAÇÕES EM PORTUGUÊS<br />

Ampla documentação, fóruns e listas <strong>de</strong> discussão em português.<br />

5 CONFIGURAÇÃO / UTILIZAÇÃO<br />

Com o Eclipse, você po<strong>de</strong> começar seu projeto a partir do <strong>vraptor</strong>-blank-project, que<br />

contem as <strong>de</strong>pendências necessárias e a configuração no <strong>web</strong>.xml.<br />

Ele po<strong>de</strong> ser baixado em: http://<strong>vraptor</strong>.caelum.com.br/download.jsp<br />

O VRaptor trabalha por convenções o que diminui relativamente o número <strong>de</strong> configurações.<br />

6 CONCLUSÃO<br />

O VRaptor, atualmente na versão 3, é um <strong>framework</strong> MVC para <strong>web</strong> focado no<br />

<strong>de</strong>senvolvimento ágil. Através da inversão <strong>de</strong> controle e da injeção <strong>de</strong> <strong>de</strong>pên<strong>de</strong>ncias, o tempo<br />

<strong>de</strong> trabalho com ele é drasticamente reduzido, graças à eliminação <strong>de</strong> código repetitivo: validações,<br />

conversões, direcionamentos, ajax e lookups (CCSL).<br />

Por ser uma <strong>framework</strong> grátis, voltado ao meio acadêmico e <strong>de</strong> fácil <strong>aprendizado</strong>,<br />

é uma ferramenta com gran<strong>de</strong> potencial <strong>de</strong> utilização com foco no <strong>de</strong>senvolvimento <strong>web</strong>, pois<br />

além da própria Caelum (quem produziu), várias empresas já adotaram esse <strong>framework</strong>, no<br />

<strong>de</strong>senvolvimento <strong>de</strong> sistemas Java.


5<br />

REFERÊNCIAS<br />

Caelum. Caelum - Ensino à distância. Disponível em:<br />

. Acesso em: 20 nov. 2009.<br />

Caelum, Apostila-fj28. Web 2.0 com VRaptor, Hibernate e Ajax. Disponível em:<br />

. Acesso em: 20 nov.<br />

2009.<br />

VRaptor, Caelum. VRaptor3. Disponível em:<br />

< http://<strong>vraptor</strong>.caelum.com.br/ >. Acesso em: 20 nov. 2009.<br />

CCSL. VRaptor. Disponível em:<br />

< http://ccsl.ime.usp.br/pt-br/project/<strong>vraptor</strong> >. Acesso em: 25 nov. 2009.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!