AJAX: A NOVA ERA DAS APLICAÇÕES WEB Francisco Rodrigues Santos Orientador: Miguel Augusto Barreto Melo Histórico Surgimento da ARPANET em 1969; 1988 Chegada da rede no Brasil; 1989 Surgimento do 1° backbone; 1994 ~ 1995 Exploração comercial da internet no Brasil; – Sendo explorada inicialmente para troca de mensagens e ou websites de conteúdo estático. Impactos da WEB Aumento no tempo de resposta das aplicações quando comparadas as desktops; Mudança de comportamento das aplicações; Inexperiência e uso irracional dos recursos; Não seguimento dos padrões de projeto para web; Incompatibilidade de designer e de execução entre os browsers existentes Restrição quanto ao tipo de aplicações. As novas aplicações Aplicações mais velozes; simplicidade no acesso e nas interações (maior interatividade); maior integração com as diversas plataformas e sistemas; Surgimento do XMLHttpRequest Definição AJAX Técnica de programação que possibilita o processamento assíncrono nas aplicações; Denominado por Jesse James Garret de AJAX (Asyncronous JavaScript And XML), em 2005; Tecnologias envolvidas Principais tecnologias envolvidas: –JavaScript –XML –XMLHttpRequest O que proporciona? Melhor comunicação entre as requisições; Redução da latência do usuário; Redução do consumo de banda; Maior usabilidade e interatividade; Monitoramento das ações do usuário; Maior velocidade nas ações Desvantagens Estabilidade nos frameworks Técnica utiliza recursos não homologados (a tecnologia ainda não está consolidada) Uso excessivo de XML para troca de mensagens (só em grandes mensagens) Portabilidade Compatibilidade Microsoft Internet Explorer: Versão 5.0 ou superior e navegadores baseado nele (versões para Mac OS não são suportadas); Navegadores que utilizam a API Gecko, ou seja, Mozilla, Mozilla Firefox, SeaMonkey, Epiphany, Galeon e Netscape na versão 7.1 ou superior; Compatibilidade Navegadores que utilizam a API KHTML na versão 3.2 ou superior. Nesta API encontram-se o navegador Konqueror 3.2 ou superior e o Apple Safari 1.2 ou superior; Opera 8.0 ou superior iCab 3.0b352 ou superior Como funciona? Transfere somente as mudanças entre postbacks (Em alguns framewoks); Encapsulamento de AJAX/DHTML; Automaticamente desabilita o Ajax em caso de erro (Em alguns framewoks); Atualiza região em tempos definidos; Exibe mensagem enquanto carrega a página; PostBack escondido (o usuário não percebe que foi realizado). Projeto piloto Utilização do .Net como linguagem base; Simulação de manutenção de dados; Escolha de 3 Frameworks que implementam o AJAX Uso do Internet Explorer 6 Uso da ferramenta Fiddler para monitoramento das requisições Projeto Piloto - Frameworks ATLAS – Desenvolvido pela Microsoft, versão CTP Abril, 2006; ConfortASP.NET, versão 0.54 FastAjax – Versão 2.0.1 Projeto Piloto - Avaliação Facilidade de instalação Recursos oferecidos Como ativar? Integração com os componentes nativos do Asp.Net Utilização de banda Demonstração Demonstração do Projeto Piloto Facilidade de instalação Todos apresentaram facilidade de instalação e uso. Ponto positivo para ATLAS que apresentou um template para novos websites Recursos oferecidos ConfortASP.N FastAjax ET Recurso ATLAS Encapsulamento de AJAX/DHTML; X X X Exibe mensagem de erro; X Desabilita o recurso - Atualização em tempos definidos Por região Por região Página Gratuito X - - Mostra “Carregando” Configurável Mensagem fixa - Recursos oferecidos Recurso ATLAS ConfortASP.NET FastAjax Transfere somente as mudanças entre postbacks - X X Tratamento do botão voltar - X - Pode estender os componentes X X - Sim Necessária ativação no IIS Possibilidade de Necessária compressão dos dados ativação do postback no IIS Como ativar? ATLAS: – Usando server controls (ScriptManagement e UpdatePainel) ConfortASPNet – Usando server controls (ComfortASP_Management e ComfortASP_PanelUpdater) – Através de herança FastAjax – Através da herança da classe: DynBack.FastPage Integração com os componentes nativos do .NET Todos os frameworks estudados apresentaram integração com os componentes nativos do ASP.NET. Utilização de banda Economia da rede Peso do script Análise individual Comparativo entre os frameworks Exemplos Jogo de xadrez: http://www.jesperolsen.net/PChess/ Editores de texto: www.writely.com e www.zohowrite.com Planilha eletrônica: www.irows.com Gerenciadores de conteúdo: www.start.com e www.pageflakes.com WebMail: www.google.com e www.hotmail.com (escolhendo a opção live mail) Box.Net Conclusões Realmente é viável o uso; Reduz o consumo da largura de banda; Necessário estudo e prévia avaliação na escolha dos frameworks; Necessário estudo prévio para a viabilidade das aplicações; Tendência do mercado para as novas aplicações web. AJAX: A NOVA ERA DAS APLICAÇÕES WEB Francisco Rodrigues Santos ([email protected]) Orientador: Miguel Augusto Barreto Melo ([email protected])