Introdução ao framework Mentawai
Esse artigo apresenta o Mentawai, um framework Move View Control (MVC) que foi criado por brasileiros. O Mentawai não usa arquivos Extensible Markup Language (xml) para configurações e mapeamento, o que o torna mais simples. Introduz-se ao leitor alguns aspectos deste framework, para isto utiliza-se de um exemplo simples e ilustrativo de algumas facilidades que o Mentawai fornece.
Introdução
O Mentawai tem por objetivo reduzir o tempo de trabalho dos desenvolvedores e tornar prazeroso o desenvolvimento de aplicações web, pois usa código 100% Java. O propósito de se usar tal framework é aumentar a produtividade, diminuir a carga de trabalho e, consequentemente, minimizar o tempo gasto com o desenvolvimento.
O Mentawai é um framework que foi desenvolvido a partir da insatisfação de um brasileiro com a falta de produtividade e a complexidade dos frameworks existentes. O tempo gasto para aprender e configurar os arquivos XML começou ultrapassar o tempo do desenvolvimento da solução do problema, logo, nasce o Mentawai para suprir tais necessidades.
"Esta é uma das mais conhecidas definições de frameworks. Ele diz que um framework nada mais é que um conjunto de classes relacionadas, mas com características completamente diferentes de bibliotecas de classes. Estas são agrupamentos de classes isoladas, razoavelmente independentes entre si e que podem ser utilizadas individualmente. Já um framework incorpora um projeto de um sistema. Mas não um sistema qualquer. Um sistema que é a abstração de vários sistemas estreitamente relacionados entre si". (p. 1)
Logo, utilizar o framework traz uma série de vantagens como, por exemplo:
O Mentawai usa o paradigma das Actions. As principais características de uma action são:
As funcionalidades desse framework são implementadas através de filtros. Um filtro intercepta uma action e pode modificar seu input e output, antes ou depois da execução de uma action.
Apesar do Mentawai não usar arquivos XML e sua configuração ser toda em Java, não há mistura de códigos. Toda configuração é feita numa classe especial separada do código fonte, chamada ApplicationManager.java, essa classe deve conter o mapeamento de todas a ações (Actions) e suas consequências.
O Mentawai disponibiliza várias funcionalidades já implementadas como: filtros, autenticação, autorização, validação, mensagens dinâmicas, inversão de controle, injeção de dependências, internacionalização, entre outras. Assim há um ganho de tempo, uma vez que não é preciso escrever códigos com tais objetivos, que são repetitivamente encontrados na maior parte dos projetos web.
Justificativas
Com o crescimento do desenvolvimento de aplicações web e a necessidade de otimizar o processo de desenvolvimento, onde o mercado exige dos programadores soluções com rapidez, eficiência e eficácia, sem perder a qualidade, fez-se necessário o uso de frameworks.O Mentawai é um framework que foi desenvolvido a partir da insatisfação de um brasileiro com a falta de produtividade e a complexidade dos frameworks existentes. O tempo gasto para aprender e configurar os arquivos XML começou ultrapassar o tempo do desenvolvimento da solução do problema, logo, nasce o Mentawai para suprir tais necessidades.
Framework: definição
Um framework, segundo Guimarães (2000) Apud Johnson (1998), "é um conjunto de classes que incorpora um projeto abstrato para a solução de problemas relacionados". E ainda, Guimarães (2000) menciona que:"Esta é uma das mais conhecidas definições de frameworks. Ele diz que um framework nada mais é que um conjunto de classes relacionadas, mas com características completamente diferentes de bibliotecas de classes. Estas são agrupamentos de classes isoladas, razoavelmente independentes entre si e que podem ser utilizadas individualmente. Já um framework incorpora um projeto de um sistema. Mas não um sistema qualquer. Um sistema que é a abstração de vários sistemas estreitamente relacionados entre si". (p. 1)
Logo, utilizar o framework traz uma série de vantagens como, por exemplo:
- Aumentar a produtividade;
- Melhorar a organização do código;
- Reutilização de códigos.
Mentawai
Nesta seção apresenta-se algumas características relevantes do Mentawai.O Mentawai usa o paradigma das Actions. As principais características de uma action são:
- Uma action possui um input por onde ela recebe os dados de uma requisição web e um output por onde os resultados da execução de uma action podem ser acessados;
- Uma action gera um resultado depois de executado. O resultado normalmente é success ou error, mas nada impede de criar novos resultados;
- Para cada resultado existe uma consequência. Essas consequências normalmente são forward ou redirect, mas nada impede de criar outras;
- Uma action tem acesso a contextos, esses normalmente são SessionContext ou AplicationContext, mas nada impede de criar outras.
As funcionalidades desse framework são implementadas através de filtros. Um filtro intercepta uma action e pode modificar seu input e output, antes ou depois da execução de uma action.
Apesar do Mentawai não usar arquivos XML e sua configuração ser toda em Java, não há mistura de códigos. Toda configuração é feita numa classe especial separada do código fonte, chamada ApplicationManager.java, essa classe deve conter o mapeamento de todas a ações (Actions) e suas consequências.
O Mentawai disponibiliza várias funcionalidades já implementadas como: filtros, autenticação, autorização, validação, mensagens dinâmicas, inversão de controle, injeção de dependências, internacionalização, entre outras. Assim há um ganho de tempo, uma vez que não é preciso escrever códigos com tais objetivos, que são repetitivamente encontrados na maior parte dos projetos web.
O mentawai assim como outros frameworks são muito importantes no desenvolvimento pois facilitam muito a nossa vida. Já imaginou ser obrigado a trabalhar com servlets ou no melhor caso apenas com jsp?
Além dele eu recomendaria uma olhada com atenção no vraptor (vraptor.org) e no hibernate (hibernate.org) além de algumas bibliotecas de javascript como YUI, jquery, GWT entre outros.
Um detalhe na introdução:
"Esse artigo apresenta o Mentawai, um framework Move View Control (MVC) que foi criado por brasileiros."
MVC significa "Model View Control" e não "MoVE View Control". Essa idéia foi emprestada do Smalltalk se não me engano.
Jeff