Artigo/Análise AJAX e utilização, vantagens e desvantagens...

TripleX

Power Member
AJAX - Aspectos Práticos
O AJAX é uma das tecnologias actuais mais polémicas em relação ao seu uso, pois cada desenvolver possui sua forma de aplicação, seu framework preferido e forma de desenvolvimento.
Com isso, temos os infinitos itens de vantagens e desvantagens de seu uso prático.
Nesse artigo tentarei explicar alguns desses itens.
Existem inúmeras linguagens de programação distintas e cada uma com sua característica própria que a deixa melhor ou pior que outras linguagens em relação a um requisito de software. Com o AJAX não é diferente, pois o JavaScript, que é a linguagem por trás dela, tem muitas coisas que podemos analisar.
Como vantagens práticas do seu uso, temos as seguintes:
Aumento significativo na velocidade do site - Quando estamos buscando apenas dados do servidor e actualizando apenas a uma parte específica do site, estamos economizando significativamente a banda utilizada do servidor, ainda mais quando temos um layout complexo e com muitas imagens. Melhor experiência do utilizador - Um site projectado com os diversos recursos oferecidos pelo AJAX é um site rico, pois o AJAX explora muito bem os recursos que o browser disponibiliza, já que o JavaScript é uma linguagem client-side (lado do cliente)-
Flexibilidade para escolha da linguagem server-side (lado do servidor) - Não pode deixar de citar essa importante característica, pois é uma grande vantagem também. Com o AJAX temos total liberdade de escolha sobre que tecnologia utilizar para a regra de negócios do projecto. Por exemplo podemos usar Java ou PHP, entre outras linguagens, para manipulação do banco de dados e posterior entrega de dados para o JavaScript tratar.

E como principais desvantagens práticas temos:


  • Utilização de um framework às vezes impossibilita a utilização de outro - A existência de inúmeros frameworks para desenvolvimento com AJAX é interessante, mas precisamos ter cuidado com incompatibilidades entre dois frameworks distintos. Por exemplo, se estamos usando o JQuery como framework, temos o símbolo cifrão ($) para manipulação do DOM, o que a Prototype também usa. Ou seja, se colocamos os dois na mesma aplicação, ficariam em conflito. É certo que temos maneiras de contornar isso, mas sabemos que seria uma dar a volta para esse problema específico, sendo que o mais certo é um estudo aprofundado sobre os principais frameworks para a escolha de um que satisfaça os requisitos do projecto.

  • Botões de “avançar” e “voltar” do navegador - Esse certamente são um grande desafio quanto ao uso. Quando usamos AJAX para o sistema inteiro, estamos criando um aplicativo (diferentemente do modelo de páginas antigo), muito parecido com aplicativos desktop, ou seja, todo o sistema será manipulado pelos eventos dos elementos, como o clique em um link ou o mouseover em uma imagem, mas isso sem o redireccionamento a cada acção, então quando o utilizador do site aperta um dos botões de navegação (voltar e avançar), não voltará ao ´conteúdo´ visitado anteriormente, mas sim à página visitada anteriormente.
Para solucionar isso podemos utilizar alguns frameworks como o JQuery que possuem ferramentas úteis para a manipulação de históricos de páginas. Ou seja, a cada evento ocorrido na mudança de conteúdo ele automaticamente adiciona um "momento" no histórico. Logo, quando o utilizador aperta os botões de navegação voltará exactamente onde quer. Outra opção é criarmos sistemas com links comuns para sistemas em AJAX, por exemplo um link home e um link empresa, cada um apontando para o respectivo aplicativo AJAX. Isso faz com que alguns históricos sejam pulados mas o utilizador se mantém dentro do contexto do sistema. Essa é a abordagem da maioria dos sistemas AJAX, até mesmo aplicações como Gmail, ou Google Docs.

  • Não possuir um padrão de codificação - Como disse no início do artigo, cada linguagem possui suas características. Mas sempre é bom compararmos o que há de melhor nas outras linguagens, então, como um comparativo iremos usar o Java. O Java possui uma convenção de nomenclatura, que é usada por toda a comunidade e ajuda na reutilização de código, tanto por terceiros como na própria organização que fez. Isso é uma boa prática a ser seguida, não apenas com o JavaScript do AJAX, mas com muitas outras linguagens, pois facilita muito na manutenção e na distribuição de códigos.
Esses são os principais itens sobre a abordagem prática e já são suficientes para a reflexão e entendimento do uso do AJAX que é uma tecnologia muito profunda, pode ser complexa quando não utilizada correctamente, mas se utilizada com o planeamento devido, rende e muito no desenvolvimento de sistemas.


Abraço a todos.
 
Última edição pelo moderador:
Back
Topo