Conheça a Mootools: Framework Javascript orientada a objetos

Olá galera…

Como continuação do post sobre desenvolvimento web com software livre (onde mencionei que iria detalhar mais sobre as ferramentas utilizadas), irei falar hoje um pouco sobre a Mootools.

A Mootools é uma framework Javascript compacta, modular, orientada a objetos e open source (MIT) que vem ganhando muitos adeptos devido ao seu uso por nomes conhecidos na web, como o W3C, Joomla!, Ubuntu, Cnet, etc.

Particularmente gosto muito do jeito como se programa em Mootools. Ao contrário da JQuery (outra excepcional framework), a Mootools é mais “explícita”, mais abrangente e consequentemente mais complexa em relação a JQuery, mas isso se dá ao fato de que “JQuery é boa para designers” e “Mootools é boa para programadores“.

SELETORES/DOM/EVENTOS

O esquema de seleção de elementos da Mootools é bem interessante. Para selecionarmos um elemento pelo seu ID podemos utilizar simplesmente o $ (cifrão), já quando queremos construir um seletor mais complexo utilizamos $$ (dois cifrões).

Ex.:

$(‘botao-alerta’).addEvent(‘click’, function()
{
alert(‘Emitindo um alerta!’);
});

$$(‘input[type=”button”]’).addEvent(‘click’, function()
{
alert(‘Emitindo outro alerta!’);
});

O exemplo acima atribui duas chamadas ao evento “onclick” de um elemento do tipo “button”. A diferença é que a primeira atribui somente ao elemento com o ID “botao-alerta”, já a segunda atribui a qualquer “input” que seja do tipo “button”.

AJAX/JSON

Essas duas sopas de letrinhas caíram como uma bomba no mundo do desenvolvimento web. O primeiro (AJAX – Assynchronous Javascript and XML) é o responsável pelas requisições assíncronas (“invisíveis”) que presenciamos nas mais diversas aplicações ricas para a internet. O segundo complementa o Ajax (JSON – Javascript Object Notation) fazendo com que sejamos capazes de manusear os valores de resposta de um Ajax puramente por variáveis Javascript.

A Mootools possui um excelente suporte a esses caras. Seus métodos de trabalho com Ajax podem parecer complicados no início, mas são bem amigáveis e eficazes.

EFEITOS/ANIMAÇÕES

A grande magia para a maioria dos desenvolvedores Javascript está na facilidade com que a Mootools proporciona os recursos de animação de elementos.

Em seu core possuímos excelentes recursos para efeitos e animações que interagem diretamente na CSS de cada elemento. E ainda, há plugins de efeitos para download, como slider, drag and drop, sortables, accordion, etc.

Nesse quesito a Mootools é um prato cheio para os criativos.E ainda contamos com um projeto chamado MochaUI, uma biblioteca de interface totalmente baseada na Mootools, semelhante a EXTjs e JQuery UI.

Flash para quê?

CURVA DE APRENDIZAGEM

A primeira vista a Mootools pode parecer complexa. Em relação a outras frameworks, que você executa uma chamada e os elementos do seu HTML saem saltitando pela tela, a Mootools requer um pouco mais de tempo e linhas de implementação.

Isso pode chatear muitos desenvolvedores, principalmente os que já conhecem a JQuery e sabem que ela é extremamente fácil porém poderosa. Embora possa agradar muitos outros, que como eu, não gostam desse sentimento de “magia negra” que fica no ar quando as coisas são implícitas demais.

CONSIDERAÇÕES FINAIS

Bom, espero ter atiçado a curiosidade de muitos em relação a esta excelente framework, e inclusive ter incentivado que pesquisem sobre outras tantas que existem por aí (JQuery, Dojo, Mochikit, Prototype, etc.), pois elas incentivam um desenvolvimento livre, leve, rico e padronizado.

Até a próxima…

Klaus Peter Laube

Mais artigos deste autor »

Tecnólogo em Análise e Desenvolvimento de Sistemas pelo Centro Universitário de Jaraguá do Sul (UNERJ). Desenvolvedor Web de longa data, apaixonado por Python e defensor dos padrões Web. Escreve quando pode no http://www.klauslaube.com.br.


4 Comentários

Jackson Caset
1

Grande Klaus,
Abordagem interessante. No trecho onde vc comenta “JQuery é boa para designers” e “Mootools é boa para programadores“ eu mudaria o conceito dizendo que “jQuery é simplesmente mais fácil que Mootools/Prototype/Dojo” e na minha opinião, como desenvolvedor, a produtividade com a jQuery é maior porque, como vc mesmo disse, é menos complexa que a Mootools e as outras.
Atualmente trabalhamos com prazos e custos apertados e quanto mais produtiva for uma framework mais tempo nos sobra para outras atividades, consequentemente, podemos ter melhores re$ultados.
Pelo que testei e li até hoje, todos frameworks tem praticamente os mesmos resultados. Uns mais rápidos outros mais lentos.

Klaus Peter Laube
2

Ok! Acho que forcei um pouco a “amizade” neste trecho, mas devidas referências em cada trecho, não sou “eu quem estou falando” e não vejo mal nenhum em a JQuery ser tão fácil que um designer sem grandes conhecimentos de programação possa manusear.
Já trabalhei com ambas as frameworks, a JQuery num CMS próprio, e a Mootools com o desenvolvimento em Joomla! e agora com o Django. Posso afirmar que realmente os resultados são praticamente os mesmos, uma diferença sutil de produtividade pois o diferencial está na maneira que você o escreve e na quantidade de bytes que o seu internauta terá que carregar.
E assim com você mesmo disse, estes mesmos resultados devem ser similares nas demais frameworks. Por isso o único ponto de comparação foi este trecho, não estou comparando a Mootools com as demais frameworks (inclusive incetivo que exautem suas frameworks favoritas)… só não uso JQuery pelas mesmas questões das quais eu não uso Java, questão de gosto, necessidade e costume.

Deixe seu comentário

Seu endereço de e-mail não será publicado. Campos com * são obrigatórios!