Encarando o Desenvolvedor - AJAX: Novidade ou distração?

Veja neste artigo de Mauro Sant'Anna o que você precisa saber sobre o Ajax.

AJAX: Novidade ou distração?

 

Uma das tecnologias mais comentadas atualmente no desenvolvimento para Web é o “AJAX”, que significa “Asynchronous Javascript And Xml”, ou seja, “JavaScript Assíncrono e XML”. Não é a sigla mais bem formada do mundo, pois inclui um artigo e outra sigla, mas deixa para lá.

O AJAX ganhou fama em março de 2005 quando, por razões não totalmente compreendidas, vários veículos de imprensa noticiaram esta “nova tecnologia”, associando-a a empresa Google. Um dos veículos notórios foi o respeitável Wall Street Journal, já que recentemente o Google havia colocado ações à venda com esplendoroso, reluzente e inoxidável sucesso.

 

Mais ou menos ao mesmo tempo, o Google colocou no ar sites como o mail.google.com e maps.google.com que efetivamente tinham uma interface com usuário meio diferente, pois você consegue fazer um monte de coisa no cliente sem que a página seja totalmente redesenhada – mesmo que o aplicativo precise buscar mais informação do servidor. Todos os outros fornecedores de software rapidamente pularam no barco e declararam que eram AJAX desde criancinha. A Microsoft, por exemplo, criou o “Projeto Atlas” para tirar vantagem do AJAX. IBM, SAP, Sun e Apple não ficaram atrás.

Será que estamos mesmo diante de uma grande e revolucionária novidade? A verdade é mais prosaica.

 

Lá pelo ano da graça de 2001, o pessoal na Microsoft do grupo do Exchange Server que cuidava do Outlook Web Access, tinha como missão fazer um site Web que funcionasse o mais parecido possível com o Outlook “normal”. Isso era uma missão Hercúlea, pois o Outlook é um software bastante interativo, muito diferente da lerdeza usual da Web. Eles tiveram então uma idéia: colocar uns comandos na linguagem JavaScript (que roda no cliente) que permitissem conversar com o servidor de forma assíncrona, independente do ciclo de carga da página. Como o XML já estava na moda, eles acharam por bem usar o XML e criaram o objeto “XMLHttpRequest”, disponível a partir do Internet Explorer 5. Outros navegadores concorrentes como o Mozilla e o Safari também implementaram o objeto XMLHttpRequest.

Até março de 2005, quando recebeu o nome de AJAX, essa tecnologia ficou essencialmente confinada ao Outlook Web Access do Exchange 2003.

 

Não há dúvida que o AJAX permite a criação de sites mais interativos, ao não recarregar página nas alterações simples. No entanto, como qualquer tecnologia baseada em script de cliente, ela é bastante difícil de usar e pouco produtiva. Para a maioria dos desenvolvedores, eu recomendo utilizar uma biblioteca de terceiros que implemente AJAX. Usá-la diretamente é algo muito caro e justificável em poucos sites e poucas situações.

Mas existe outro aspecto do AJAX que eu acho bastante negativo: é a ilusão de que com ele a interface Web ficará tão boa quanto a interface Windows.

 

A interface Web tradicional (HTML) é indubitavelmente pobre; os aplicativos são lentos e chatos de usar, daí toda a onda em torno de AJAX. Uma excelente alternativa é a criação de aplicativos “SmartClients”, disponíveis no .NET Framework. Depois de existirem por alguns anos sem muita divulgação e com alguns problemas de implementação, a Microsoft finalmente os melhorou bastante no Framework 2.0 com a tecnologia ClickOnce. O sistema operacional Vista, a ser lançado ainda em 2006, trará uma interface com usuário muito mais rica (chamada Windows Presentation Foundation), que incentivará o uso do ClickOnce. Parecia que estava tudo certo para que os SmartClient finalmente triunfassem e que a interface HTML ficasse restrita às situações onde o acesso universal fosse absolutamente necessário. Os aplicativos Intranet e Extranet migrariam naturalmente para SmartClient.

 

Entra em cena o AJAX e as pessoas que estariam considerando o SmartClient passam a ter a ilusão que o SmartClient não é necessário afinal, que o AJAX resolverá todos os problemas. É óbvio que nem o melhor site AJAX consegue ter a mesma interface que um aplicativo GUI, mas os desavisados podem pensar que “é só uma questão de tempo, podemos esperar um pouco até que o AJAX fique igual ao GUI”. O problema é que isso nunca vai acontecer. Mas até o pessoal perceber, pode passar uns dois anos. Dois anos SEM SmartClient.

Isso para não falar que tem gente que já pensa que AJAX e a interface do Windows Vista são a mesma coisa (não são), mas isso é outra estória.

Artigos relacionados