Vantagens do VRaptor

maio 12, 2007 às 11:39 am | Publicado em Java, JEE | 14 Comentários

Assim como o struts e companhia, o VRaptor é um controlador MVC para web, ou seja, mais um framework para auxiliar o desenvolvedor a usar MVC em suas aplicações. Mas o que faz com que o VRaptor venha conquistando tantos usuários? Vou relatar algumas características interessantes e que fez com que eu escolhesse o VRaptor como o meu controlador MVC preferido.

Rápido aprendizado

Você não precisa se preocupar com treinamento da equipe. É muito simples trabalhar com o VRaptor. Posso garantir que 2 dias é o suficiente pra conhecer todo seu funcionamento.

Nada de HttpServletRequest, HttpServletResponse e HttpSession

O VRaptor tira do desenvolvedor a responsabilidade de trabalhar diretamente com as classes da API dos Servlets através de simples anotações.
Suponha que existe uma Action (que no VRaptor é Logic) que precisa passar um objeto Pessoa para ser mostrado em uma jsp.

Classe Exemplo

- para inserir o objeto como um atributo na requisição basta a anotação @Out:

@Out
private Pessoa pessoa = new Pessoa();

- para inserir o objeto na sessão basta mudar o escopo na anotação @Out:

@Out(scope=ScopeType.SESSION)
private Pessoa pessoa = new Pessoa();

Da mesma forma existe a anotação @In para recuperar atributos dos escopos (requisição, sessão, aplicação e logic???).

Logic é um novo escopo para seus objetos. Um objeto neste escopo ficará disponível durante a lógica de negócios, ou seja, quando a requisição for direcionada para a JSP o objeto não estará mais acessível. Já precisei deste escopo usando o struts e adivinhem? com certeza tive que implementar tudo…rs

Pouquíssima configuração

O VRaptor trabalha por convenções o que diminui relativamente o número de configurações. Por exemplo, marcando uma classe com a anotação @Component, automaticamente todos os métodos públicos estarão disponíveis para serem acessados pela view.

A convenção também é aplicada nos redirecionamentos após a execução de um método na Action (Logic). Veja no exemplo acima, que o método não retorna nenhuma string ou objeto indicando para qual recurso a requisição deverá ser direcionada. O VRaptor irá direcionar para uma jsp com o padrão ‘/nomeComponente/nomeMetodo.ok.jsp’.

Vale ressaltar que se for necessário é possível customizar o funcionamento de uma forma bem simples.

A não existência de taglibs

Na minha opinião, um controlador mvc não deveria interferir na view. Sua responsabilidade é apenas controlar as requisições, direcionando-as para as classes responsáveis por tratá-las. Encher sua JSP com taglibs de frameworks MVC é muito perigoso e arriscado. Use um padrão (JSTL) e caso seja necessário crie as suas próprias.

O VRaptor não possui um pacote de taglib. Use expression language + JSTL e seja feliz….

———————-

Em breve colocarei mais exemplos e características do VRaptor. Espero convencer a todos a pelo menos baixar e testar este incrível framework.

Blog no WordPress.com. | Tema: Pool até Borja Fernandez.
Entradas e comentários feeds.

Seguir

Obtenha todo post novo entregue na sua caixa de entrada.