Ajax

Dado o recente interesse em Ajax, você seria perdoado por pensar que era uma nova tecnologia. Na verdade, o objeto XMLHttpRequest foi em torno de anos. Em termos técnicos, a interação JavaScript assíncrono com o servidor não é nada novo. Todos os outros elementos do modelo Ajax também têm sido em torno de algum tempo: CSS, (X) HTML e DOM Scripting. Entanto, em 2005, o interesse por esta metodologia disparou. Poderia ser realmente que esta abordagem simplesmente dar um nome mal-humorado como o Ajax foi responsável pelo interesse repentino? Na verdade, o interesse pela nova abordagem ao Web site do edifício estava em alta antes mesmo de Jesse James Garrett cunhou o termo "Ajax". Este aumento interesse foi alimentado pelo surgimento de novas aplicações web do Google.

Quando o Google lançou o Gmail, um serviço baseado na web e-mail, o foco inicial era a sua grande capacidade de armazenamento (http://mail.google.com/). Quando as pessoas começaram a interagir com o serviço, outros recursos vieram à tona. Gmail emprega corretor ortográfico, conclusão automática de endereços e outros processos que são realizados de forma transparente no fundo. O front-end da aplicação web de forma assíncrona é a transferência de dados para e receber dados, o servidor.

O interesse pelo objeto XMLHttpRequest foi despertado ainda mais quando iniciou-se em testes beta do Google Suggest, http://www.google.com/webhp?complete=1. Quando o usuário começa a digitar uma frase no campo de pesquisa, sugestões de frases concluída aparecer em uma lista abaixo. Toda vez que o usuário digita uma carta, uma chamada é feita para o servidor para uma nova lista de sugestões. Esse tipo de recurso é eficaz porque a interação cliente / servidor que está acontecendo de forma assíncrona. Se a página foi recarregado toda vez que o usuário digitou uma letra, o Google Suggest seria muito menos útil.

Google forneceu os exemplos de trabalho, e Jesse James Garrett, desde um termo de marketing mal-humorado. Ajax está ferrado e pronto para a descolagem.

  

 

Desafios Ajax

Ajax está aqui para ficar, por que eu estou certo. No geral, acho que a metodologia Ajax vai trazer muitos benefícios. Pode melhorar a usabilidade de sites, fornecendo respostas muito rápidas a ações do usuário, sem atualizar a página inteira. Ao mesmo tempo, essa nova abordagem também apresenta uma série de desafios.

Uma das características das aplicações Ajax é um reduzido número de visualizações de página individual. A desvantagem para este estado de economia de tecnologia é que ela interfere com a navegação convenções como usar o botão Voltar ou ser capaz de marcar as páginas individuais. A capacidade de atualização de apenas parte de uma página também altera as expectativas do usuário. Idealmente, todas as medidas tomadas pelo usuário deve ter um resultado claro e evidente. Web designers devem enfrentar o desafio de fornecer feedback significativo quando o usuário inicia uma solicitação para o servidor e quando o servidor fornece uma resposta.

Não há dúvida de que o Ajax é uma ferramenta poderosa, mas, como acontece com qualquer ferramenta poderosa, que poderia ser mal utilizado. Existe o perigo de que, agora, no exato momento em que o JavaScript está se tornando uma tecnologia aceite, o Ajax poderia voltar-nos de volta à estaca zero, se garners uma reputação de ser estranho e inacessível. Isso é algo que nós, como web designers necessidade de evitar. A chave para a construção de uma aplicação Ajax sucesso é tratá-la como a adição de qualquer acessório outro JavaScript. Aplicar reforço progressivo a fim de proporcionar a degradação graciosa.

 

Melhora progressiva com o Ajax

Como as aplicações Ajax pode fornecer respostas rápidas e transparência às ações do usuário, eles são muitas vezes comparada a aplicações de desktop mais do que sites tradicionais. Há uma certa dose de verdade nessa comparação, mas pode ser levado muito longe. Existe o perigo de que o uso de Ajax poderia ser visto como carta branca para ignorar as considerações de usabilidade e acessibilidade associados aos sites tradicionais.

Já estão surgindo sites que usam Ajax e JavaScript especificar como um requisito para acessar o conteúdo. O argumento oferecido como justificação para esta abordagem é que os recursos que são fornecidos são tão rica em natureza, não poderia degradar graciosamente. Eu não comprá-lo. Na verdade, creio que as aplicações Ajax, por sua própria natureza, pode sempre oferecer uma alternativa não-Ajax. Tudo depende de como a funcionalidade Ajax é aplicado. Se Ajax é incluído como parte da funcionalidade do começo, então será muito difícil dissociar-lo numa fase posterior, para fornecer uma versão não-Ajax. Se, por outro lado, a aplicação é construído utilizando antiquado atualiza a página, o Ajax pode ser aplicado na parte superior do quadro existente para interceptar solicitações para o servidor e encaminhá-los através de XMLHttpRequest. A funcionalidade do Ajax, em seguida, senta-se como uma camada sobre o local regular. Isso soa familiar? Isto não é diferente da técnica de realce progressivo que você já viu empregados ao longo deste livro.

Construindo a funcionalidade Ajax para o núcleo de uma aplicação desde o início é equivalente a usar o javascript: pseudo-protocolo de cada vez que quiser um link para desencadear uma acção. É muito melhor usar apenas um link normal e interceptar a ação padrão. A melhor maneira de construir um site Ajax é simplesmente construir um site normal. Então Hijax-lo.

 

Hijax

Se o sucesso do Ajax, tem mostrado uma coisa, é que ter um nome curto, mal-humorado para algo que ajuda a vender uma idéia. Assim como é mais fácil dizer do Ajax, em vez de "DOM Scripting com o XMLHttpRequest, CSS e (X) HTML," é mais simples para mim dizer Hijax em vez de "melhoramento progressivo usando Ajax."

Ajax depende do servidor para o seu poder. A linguagem de programação server-side realiza a maior parte do trabalho real. O objeto XMLHttpRequest age como um gateway entre o navegador eo servidor, transferência de pedidos e respostas. Se esse gateway é removido, ele ainda deve ser possível enviar solicitações e receber respostas. Ele só vai demorar mais tempo.

Pense novamente o exemplo de um formulário de login. A maneira mais simples de construir esta é a utilização do time-honored abordagem de ter uma forma de apresentar a página inteira para o servidor, que então transmite uma nova página contendo o gabarito. Todo o processamento é feito no servidor, onde os valores que foram inseridos no formulário são comparados com os valores armazenados em um banco, na tentativa de encontrar uma correspondência.

A fim de aplicar a metodologia Ajax para o processo de login, a apresentação do formulário deve ser interceptada (seqüestrados) e passado para o objeto XMLHttpRequest em vez disso. A apresentação de um formulário desencadeia uma apresentação do evento. Se esse evento é capturado usando o manipulador de evento onsubmit, a ação padrão a apresentar a página inteira pode ser cancelada e substituída por uma nova ação: enviar os dados para o servidor via XMLHttpRequest. Depois que o formulário de login foi Hijaxed, o processo de login torna-se mais conveniente para o usuário. Os tempos de resposta são diminuídas, e atualiza a página longas são eliminados. Fundamentalmente, no entanto, se o JavaScript está disponível para o usuário, a aplicação irá funcionar. Vai levar mais tempo ea experiência não será tão perfeita, mas porque o processamento de login é feito no servidor, não há motivo para ligar o usuário de distância.

O facto de aplicações Ajax depender tanto do lado do servidor, ao invés de processamento client-side significa que eles podem degradar graciosamente. Evidentemente, algumas aplicações irá parecer dolorosamente lento quando eles contam com atualizações da página, ao invés de Ajax, toda vez que o usuário inicia uma ação. Mas um lento experiência degradada ainda é melhor do que nenhuma experiência em tudo.

 

O futuro do Ajax

Estou certo de que veremos um aumento no uso de Ajax. Pessoalmente, eu gostaria de ver Ajax usado da mesma forma que qualquer outro tipo de DOM Scripting devem ser usados: como um acessório, em vez de uma exigência, a experiência do usuário. Eu gostaria de ver a idéia de Hijaxing aplicado aos elementos da página, como formulários do gabarito e carrinhos de compras. Para mim, a técnica Hijax parece ser a maneira mais simples de aplicar Ajax. Infelizmente, a maioria das aplicações high-profile Ajax não ter sido construída dessa forma. Gmail e Google Maps foram ambos construídos totalmente integrado com o Ajax, desde o início. Isso torna muito mais difícil para fornecer uma versão não-Ajax.

Se o Google Maps tinha sido construído, como qualquer outro website de mapeamento, os aprimoramentos Ajax poderia ter sido aplicada na parte superior. Como é, vai envolver um monte de trabalho para garantir uma "separados mas iguais" não-versão do Ajax.

Google Suggest, por outro lado, é um bom exemplo de melhora progressiva em ação. A principal funcionalidade é a capacidade de pesquisar na Web por um prazo. Com JavaScript habilitado, esse processo é reforçada pelo sugerindo possíveis termos de pesquisa usando Ajax. Se o JavaScript estiver desativado, a funcionalidade do núcleo permanece.

Não há dúvida de que o Ajax é uma tecnologia maravilhosa, mas eu espero que isso não será abusado em uma forma de excluir os navegadores que não cumprem os requisitos mínimos de entrada. Em vez disso, espero que ele será usado como CSS , como forma de melhorar a experiência do usuário sem comprometer o acesso a conteúdos.

 

Aplicações na Web

O Gmail é um exemplo de uma aplicação web. Cada vez mais tarefas que tradicionalmente eram realizados por um software de desktop estão migrando para a Web: ler e escrever e-mails, gerenciar projetos, e armazenar fotos, para citar apenas alguns. Web design está começando a se assemelhar-se ao desenvolvimento de software.

As aplicações mais e mais se deslocar para a Web, o papel do sistema operacional pode tornar-se cada vez mais irrelevante. Pode ser que no futuro próximo, tudo que você precisa para realizar suas tarefas diárias é uma ligação à Internet e um navegador web compatível.

Seu computador em casa pode ser um terminal burro conectado a uma rede de servidores inteligentes. Construção de aplicações na Web parece estar cheio de dificuldades. Os desenvolvedores de software lamentam a falta de controle sobre as formas e outros elementos de interface. É verdade que, em comparação com a riqueza de interfaces de usuário de desktop, o browser pode parecer primitiva. Mas o importante, o navegador é apenas bom o suficiente para justificar a usá-lo como uma interface. Há vantagens em ter uma aplicação centralizada em um servidor web em vez de muitas cópias de um pedido de audiência de desktops. Mudanças e melhorias podem ser realizadas instantaneamente com efeito imediato. Se estiver usando um browser, ao invés de uma rica interface gráfica do usuário, é o preço a pagar, parece valer a pena. Alternativamente, o navegador pode se tornar apenas uma das muitas ferramentas possíveis para interagir com aplicações web. Sistema operacional da Apple Tiger inclui um aplicativo chamado Dashboard. Dashboard contém uma coleção de widgets, muitos dos quais interagem com aplicativos web.

Estes widgets utilizar todas as tecnologias conhecidas da web: CSS, XHTML e DOM Scripting, com melhorias de desktop poucos jogados dentro Dashboard é efetivamente oferecer uma alternativa ao uso de um navegador. Outras alternativas podem ser próximas. XUL da Mozilla e tecnologias da Microsoft XAML tanto prometer os meios para construir interfaces ricas de usuário que pode interagir com aplicações web. Ninguém parece muito certo se isso significa que veremos muitas aplicações desktop na web ou lotes de aplicações web no desktop.

Pessoalmente, adoro a idéia da Web como uma plataforma de aplicações. No entanto, há um perigo na comparação de aplicações web para aplicações desktop. Considerando que a Web é aberta a qualquer e todos os agentes do usuário, aplicações desktop estão ligadas a um sistema operacional específico. Ao criar aplicações Web com tecnologias como DOM Scripting and Ajax, é muito tentador para exigir um lock-in similar.

A solução mais simples, muitas vezes parece ser a procura de um requisito mínimo de tecnologia, como um DOM-navegador compatível, ou pior ainda, para limitar as aplicações para navegadores específicos. Enquanto isto pode parecer o caminho mais fácil para construir aplicações web, creio que este abordagem deve ser resistido a todo custo.

um artigo submetido por Magda Dourado Pucci


Isenção de responsabilidade:O nosso site não se responsabiliza pelo conteúdo deste artigo. Webarticles é uma fonte de informação livre.
Importante: Este artigo "Ajax" foi traduzida por um software automático. Nós sentimos muito por quaisquer erros de ortografia que pode ter ocorrido. Obrigado pela sua compreensão.


Online: 357 users browsing the articles directory