Ajax: Desenvolvendo uma Web mais interativa

Aplicações Web tradicionalmente tendem a ser conjuntos de páginas HTML que precisam ser recarregadas para modificar qualquer parte do seu contexto. Tecnologias como JavaScript e CSS (cascading style sheets) trouxeram maturidade ao ponto de criar aplicações muito dinâmicas.
Este artigo irá detalhar técnicas que você pode usar diariamente para tornar sua aplicação muito mais agradável e interativa para o usuário. Conceitos sobre Web 2.0 e as premissas básicas de Ajax serão apresentadas, enquanto para os exemplos mais práticos utilizaremos a biblioteca DWR.

O que é

Ajax, ou Asynchronous JavaScript and XML (JavaScript Assíncrono e XML) é um termo que descreve uma técnica de desenvolvimento Web para a criação de aplicativos interativos usando uma combinação de:

• HTML (ou XHTML) e CSS para apresentar as informações;

• Document Object Model (DOM) manipulado através do JavaSript para mostrar e interagir dinamicamente com a informação apresentada;

• o Objeto XMLHttpRequest, para trocar dados assincronamente com o servidor Web, geralmente utilizando-se XML, embora qualquer formato de texto irá funcionar, incluindo HTML, plain text e JSON(JavaScript Object Notation – http://en.wikipedia.org/wiki/JSON).

Ou seja, Ajax não é uma tecnologia por si própria, mas sim a união de várias tecnologias. A maior vantagem dessa abordagem é que o usuário tem uma navegação mais rápida, natural e intuitiva. Juntando isso a um punhado de DHTML, as aplicações Web ficam muito mais interativas.

O nome “Ajax” foi cunhado por Jesse James Garrett para definir o objeto XMLHttpRequest, um componente criado jutamente com o Internet Explorer 5, pela Microsoft, e mais tarde suportado pelo resto dos browsers – em outras palavras: o termo “Ajax” foi criado simplesmente por questões de publicidade.

Uma das maiores diferenças entre programar um aplicativo para o desktop, que fica instalado localmente na máquina do usuário, e um aplicativo Web, é em relação à maneira em como os eventos são tratados. Em um aplicativo Web, toda e qualquer ação do usuário implica em requisições ao servidor, enquanto em um aplicativo instalado localmente, o retorno é quase instantâneo. Somado a isso, tem a forma de armazenar estado, já que o protocolo HTTP é dito ser “stateless”, e uma aplicação desktop, por sua vez, dispõe de uma área de memória “dedicada”.
Ajax pode ajudar a tornar aplicações Web mais parecidas com aplicações desktop, oferecendo respostas mais ágeis e, conseqüentemente, diminuindo a curva de aprendizado de novos usuários. Obviamente que tudo tem seu preço, e desenvolver aplicações corretamente com Ajax adiciona um certo grau de complexidade na arquitetura da aplicação.

Vantagens

Menor uso de banda

Grande parte do conteúdo das páginas são comuns durante toda a navegação, como o menu, cabeçalho com logo, descrição, atalhos, rodapé, etc., enquanto o conteúdo de interesse principal ao usuário ocupa uma fração não muito grande da área visível do navegador. Atualmente, quando mudamos de página, todo o conteúdo em comum será carregado novamente do servidor, além de, é claro, o conteúdo de interesse do usuário – notícia, foto, vídeo, etc.

Isso tudo consome banda, muita banda, afetando tanto o servidor quanto o usuário, que deve esperar a transferência de dados completar. E banda é algo bastante caro, além de limitado em muitos casos. O website paga caro pela banda que os usuários utilizam navegando pelo conteúdo e fazendo downlaods e o usuário paga caro para o provedor de acesso.
Com Ajax, é possível reduzir drasticamente o uso de banda, tornando a navegação muito mais rápida.

Resposta mais rápida
Usuários visitam nossos websites porque algo neles os interessa, como uma informação exclusiva, um artigo, uma foto peculiar, enfim, conteúdo. E, cada vez mais, exigem respostas rápidas e informação de qualidade, caso contrário ficam frustrados e vão procurar outro site, dificilmente voltando ao seu em uma ocasião futura.

Estudos de usabilidade apontam para um princípio básico: o usuário irá bater o olho na sua home page a procura do conteúdo de interesse. Caso não o ache facilmente, as chances de ir embora são grandes – ninguém gosta de ficar navegando à sorte na procura de algo. Uma vez que conseguimos ter a atenção inicial do visitante, é vital dar-lhe conteúdo de qualidade com resposta rápida, ou seja, algo que esteja a poucos cliques do mouse e não demore ‘séculos’ para carregar.

Utilizando os recursos de XMLHttpRequest, disponibilizamos a informação dezenas de vezes mais rápido, pois buscamos apenas o conteúdo de interesse do usuário – a página já está renderizada, os banners já estão aparencendo. Evitando o recarregamento completo dos dados, a navegação torna-se mais veloz e prazerosa.

Mais interatividade
A forma de apresentação de conteúdo na Internet evolui assim como revistas e jornais, mas de um modo próprio e inovador. Primeiramente, o acesso era feito em modo texto e pouquíssimas pessoas usavam a tecnologia. Com o passar dos anos, foram substituídos pelo World Wide Web, que continham páginas estáticas com algumas figuras, foi a introdução do HTML. Após isso, surgiram imagens animadas que traziam um tempero diferente às páginas. Juntamente com a linguagem Java, os applets nasceram e as pessoas ficaram entusiasmadas com ele. Até então, a Web era uma grande forma de se compartilhar informação, mas não muito divertida. Em meados de 99, com o lançamento do Flash 4, a Internet conheceu interfaces e animações um pouco mais amigáveis para o usuário, porém havia e há a desvantagem do tamanho dos arquivos necessários, falta de interatividade com a parte estática do site e dependência de um fornecedor. Com Ajax, você consegue ter interatividade e usabilidade com o usuário sem demandar um elevado consumo de recursos para que esses sejam disponibilizados.

Usos

Validação
Validação de dados é um item crítico para a segurança de qualquer sistema, devendo ser feita tanto no lado do cliente, via Javascript, quando no servidor – uma vez que a validação no cliente serve mais como praticidade para o usuário, podendo sempre ser facilmente burlada.
Ajax torna-se útil em validação no lado cliente por permitir que as regras fiquem apenas em um lugar – no servidor -, evitando assim duplicação de dados e a não-exposição das regras ao usuário mais curioso.

UI mais sofisticada

Páginas feitas para rodar em um browser podem ser bastante sofisticadas por si próprias, mas perdem boa parte da elegância e praticidade quando as mesmas precisam ser recarregadas para buscar informações no servidor.

Com Ajax, podemos facilmente tornar a página mais natural, menos fria e impessoal, utilizando Javascript para buscar no servidor a porção de dados que precisam ser modificados, como o texto da próxima página de um artigo, as informações complementares de um formulário ou mesmo o processamento de alguma ação mais importante, como salvar informações cadastrais.


Leia o artigo completo na revista MUNDOJAVA

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s


%d blogueiros gostam disto: