Ajax e o hype

Esse é o verdadeiro Ajax Minha primeira aplicação com XMLHTTPRequest foi feita em 1999. Era uma sala de bate-papo e naturalmente, só funcionava no Internet Explorer. Muito tempo antes disso eu já usava requisições em frames ocultos para evitar requisitar uma página inteira. De lá para cá as coisas evoluiram. O XMLHTTPRequest se tornou parte do padrão ECMA e os navegadores amadureceram em seu suporte, de modo que hoje é possível que aplicações como o GMail funcionem em pelo menos quatro navegadores diferentes.
Tenho uma ferramenta de bate-papo e navegação assistida que usamos nos cursos de padrões web. Quando a desenvolvi, como o suporte a XMLHTTPRequest ainda era incipiente, ela só funcionava no Mozilla e, às custas de muitos hacks, no Internet Explorer. Depois disso nunca mais mexi no código. Hoje ela funciona com perfeição no Opera 8 e no Konqueror 3.4 (alguma boa alma feliz proprietária de Macintosh poderia me ajudar a testar no Safari?)
Esse é um excelente exemplo de algo que eu vivia dizendo aqui: quem usa padrões não tem medo do futuro.
Além dessa aplicação, há uma série de outras, como a de preenchimento automático de endereços na tela de matrícula do curso (preencha o CEP e clique em buscar).
Assim como eu, muita gente já vinha desenvolvendo Ajax[bb] há bastante tempo. Você vê bons exemplos por aí, em todo lugar. E é natural que muita gente se levante contra o uso do termo. Afinal de contas, porque dar um nome novo e uma aparência de ser a descoberta do século para algo que eu já usava no século passado?
Isso me faz lembrar que muitos de nós tivemos o mesmo sentimento quando a Macromedia começou a falar em RIA. Ora, RIA para a Macromedia nada mais é do que Flash se comunicando com o servidor, provavelmente usando XML. Eu já fazia isso com o Flash 4, sem XML. Com o Flash 5 comecei a fazer a mesma coisa, dessa vez usando XML. Não há nenhuma novidade nisso!
A despeito de nossos protestos, a Macromedia continua falando em RIA, e o mercado adotou a idéia. Seu chefe, seus professores, ou talvez até seu cliente estão falando de RIA como se fosse a oitava maravilha do mundo.
Se não pode vencê-los, junte-se a eles! Vamos desenvolver RIA, usando Ajax! Vamos mostrar que também sabemos usar o hype e colocar nossas siglas na boca do povo. Vamos escrever comparativos entre Ajax e Flash, e mostrar que Ajax é a melhor solução para RIA na maioria dos casos. Vamos ver nossos gerentes e diretores falando sobre a nova tecnologia que a equipe de TI implantou sob o comando deles: Ajax. Vamos continuar defendendo padrões abertos baseados na simplicidade, mas vamos falar a língua deles. Assim você pode continuar fazendo seu trabalho e ao mesmo tempo satisfazer a necessidade que algumas pessoas tem de “algo novo que venha revolucionar o atual esquema de coisas” (seja lá o que queiram dizer com isso.)
Ajax neles!
Agora, sejamos honestos: o hype pode ser bom também para te fazer pensar. O Gmail para mim foi um tapa de luva de pelica. Os recursos estavam lá há bastante tempo, prontos para ser usados, e quantas oportunidades eu perdi de facilitar a vida das pessoas que vão usar meus sistemas porque subutilizei ou não utilizei XMLHTTPRequest[bb]. Talvez dar nomes às coisas ajude a torná-las ferramentas. Talvez da próxima vez eu vá me perguntar: não seria interessante aplicar Ajax aqui?
Para terminar, estou gostando do rumo que as coisas estão tomando. Estou fazendo experiências, estudando, de olho no que andam dizendo, e logo trago novidades para vocês (inclusive uma aplicação de exemplo que estou quase terminando.)

Publicado por

Elcio

Elcio é sócio fundador da Visie Padrões Web. Pioneiro no uso e divulgação dos padrões do W3C no Brasil, Elcio já treinou equipes de dezenas de empresas como Globo.com, Terra, Petrobras, iG e Locaweb. Além disso, tem dirigido as equipes da Visie no desenvolvimento de projetos web para marcas como Brastemp, Itaú Unibanco, Johnson & Johnson e Rede Globo.

22 comentários em “Ajax e o hype”

  1. Olá…o ajax só é aplicado em linguagens executadas no servidor, ou tem como eu utilizar usando apenas html + javascript+css???

  2. Parabéns por disponibilizar tanto conhecimento. Tou voltando a programa para web, quero está preparado para os dispositivos móveis. E tou seguindo os padrões e aprendendo bastante. Espero em breve diponibilizar o que estou fazendo também.

    Falows

  3. Elcio, no seu site ajaxdemo você disse que precisava usar urlencode para escapar de caracteres acentuados em MSIE.
    Eu tive essa dificuldade, mas resolvi de forma mais efetiva: basta colocar, na resposta HTTP da página, o cabeçalho Content-Type correto. O engine do MSIE baseia-se no Content-Type para interpretar os caracteres internacionais. Sem chuncho!

  4. Estou tentando aprender XMLHTTPRequest nomeado como AJAX já fazem alguns dias, porém não encontro nada realmente de concreto na internet. Tipo quando eu estava começando a aprender PHP, e existiam vários tutorias do tipo “Olá Mundo”. Se algume tiver algum site que explicar com implementar o XMLHTTPRequest propriamente dito eu agradeceria.

  5. Testei o sistema de admin do tableless.com.br usando o ie do mac e ele no funcionou. Pelo que percebi ele no consegue fazer a requisicao ao arquivo .asp. Tem alguma alternativa ou essa mais uma “vantagem” do ie mac?

  6. Cara no seu artigo, que por sinal está muito bom, você disse p/ dar uma olhada no formulário da atipico que tinha uma aplicação de CEP. Mas não tem nada disso!!!! Você não colocou o link errado? E quais mais aplicações eu posso ver de ajax? feitas por vc e no resto do mundo… GRATO!

  7. Elcio Concordo com a tua opinião em ser apenas nomes novos para coisas “velhas”, mas é exatamente esses nomes novos que fazem as coisas evoluirem num ritmo mais rápido. Afinal, Ajax não é uma tecnologia, e sim uma forma de desenvolver aplicações webs com mais “cara” de aplicações desktop. Veja como é importante dar-se nome aos “bois”, pois se Jesse James Garrett (http://www.adaptivepath.com/publications/essays/archives/000385.php) não tivesse lançado o termo nesse artigo, nós nem estaríamos discutindo sobre, e talvez a integração entre todas as tecnologias que formam o Ajax evoluisse de forma mais lenta. Bom, de qualquer forma, concordo 99% contigo. Respostas: Newton Wagner Olha este site http://www.ajaxpatterns.org/ Tem bastante coisa lá! Leonardo Priori Utiliza a função nativa do Javascript encodeURIComponent nos dados antes de enviá-los pelo XMLHTTPRequest.

  8. desculpa te encher o saco mas o meu contario é uma duvida. como fazer um post via XMLHTTPRequest de valores com “=” e “&”? existem outros caracteres que geram problema?

  9. Alguém saberia informar um site (pode ser em inglês) com material sobre o AJAX? É difícil achar coisa sobre o assunto, por q sempre aparece várias coisas sem relação ao assunto no Google por exemplo. heheheh. Valeu ae!

  10. O Elcio falou bem de um assunto que muitos estão extremamente entusiasmados como sendo uma revolução na web, que na verdade não é essas coisas todas. Também foca algo interessantissimo, a questão do uso de padrões(na minha opinião, é o caminho para boas aplicações e quaisquer futuras implementações[como o ajax] fluirem de forma ágil e simples). Rodrigo, aprender DOM/XHTML/CSS nos padrões já é 90% do caminho, o resto é saber como utilizar o objeto XMLHttpRequest. Tou atrasado pro trabalho, fui ;P

  11. Só uma alfinetada bem de leve… E Tableless? Não seria um novo nome para tecnologias pré-existentes também? 😉 Sobre isso de tecnologias antigas voltando como novidade, eles fazem isso o tempo todo! Outro dia (2004) um ex-colega veio falar comigo todo empolgado: “Cara, tem um negócio novo que a gente tá usando! Já ouviu falar de CVS?” :-/ Pelo menos não mudaram o nome…

  12. Como eu queria aprender Ajax e me aprofundar, mas o material em português não é uma coisa que se diga: “nossa com é Ajax!”

  13. Elcio, mesmo de o Google implementando vários serviços com o XMLHTTPRequest há um tempão, vc reparou que ele só ficou interessante quando ganhou um nome marketeiro e saiu do ambiente de desenvolvimento? Toda esta euforia começou mesmo com o texto do JJ Garrett [http://www.adaptivepath.com/publications/essays/archives/000385.php], cuja área de atuação é muito ligada aos arquitetos de informação e estrategistas de negócios na Web em geral. Nem precisou de um batalhão de palestrantes como a Macromedia está precisando para vender o RIA. Bastou um artigo de um nome respeitado em outra área falando a língua deles. Temos que aprender a fazer estas coisas para promover outros padrões no mercado. Cada vez mais abrir nossa linguagem para que ela se torne acessível a qualquer um e não somente a técnicos como nós. []s

Deixe um comentário

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