sexta-feira, 13 de julho de 2007

AJAX em partes: Parte 1: O que é AJAX

O QUE É AJAX?

Esta é uma pergunta frequente que ouço das pessoas que trabalham com web, ou simplesmente gostam de tecnologia. Se você também não conhece, recomendo acompanhar este e os próximos post em "nosso blog".

AJAX é o acrônimo de Asynchronous Javascript And XML (traduzindo ao pé da letra: Javascript e XML Assíncrono). Um ponto importante que deve ser considerado é que AJAX não é TECNOLOGIA e sim METODOLOGIA.

A metodologia AJAX ocorre quando é instanciado o objeto nativo nos navegadores atuais(browsers) chamado XMLHttpRequest(isto nos browsers Firefox, Mozilla, Opera), no caso do Internet Explorer é chamado com ActiveXObject('Microsoft.XMLHttp') ou ActiveXObject('MicrosoftMSXML2.XMLHttp') com modificações nas versões do objeto active X (MSXML2.XMLHttp.3.0 à MSXML2.XMLHttp.5.0), que é responsável em realizar "requisições" ao servidor (POST e/ou GET) de forma a não recarregar a página devido a forma assíncrona de requisição.

Este objeto mencionado fôra desenvolvido primeiramente pela Microsoft e aplicado a seu navegador Internet Explorer e logo em seguida, adotado pelos demais navegadores.

O grande BBBOOOMMM desta metodologia(AJAX) é a interação que pode ser realizada com o usuário. Citarei um exemplo prático, porém odioso para o internauta, os nossos famosos e importantes FORMULARIOS(FORMS).

Para um usuário não há coisa pior do que preencher um big formulário e no final, quando submeter o formulário, ver que suas informações não estão válidas e ter que preencher novamente este formulário, isto é repulsivo... com AJAX, no envio do formulário (propriedade onsubmit de form) já é validado se as informações estão corretas por intermédio do XMLHttpRequest e caso não estejam, não haverá a "perca" dos dados do formulário mas sim a menção do campo inválido e a ocorrência de foco neste campo (focus()) para seu preenchimento correto.

Este é apenas um exemplo, existem vários outros...

No Próximo post ensinarei como instanciar o objeto XMLHttpRequest e utilizá-lo em uma requisição assíncrona ao servidor http.

{ Até ... }

Nenhum comentário: