AJAX Rodrigo Vronscki Ricardo Roger de Córdova Farias

Slides:



Advertisements
Apresentações semelhantes
Nota do Editor: dica para criar o PPT
Advertisements

Introdução Ajax Json XML
UNIPAC – ARAGUARI CAMPUS – IX PROF. EVERTON HIPÓLITO DE FREITAS
ASP.NET Ajax 2º Semestre 2009 > PUCPR > Tecnologia de Programação 2 Bruno C. de Paula.
Programa de Pós-Graduação Lato Sensu MBA em Gestão de Software
Desenvolvimento Baseado em CGI Material cedido pelo Prof
Web Services Erika Hmeljevski Estefania Borm Leonardo Malagoli
SEGUNDA FASE Área de Desenvolvimento de Sistemas.
Área de Desenvolvimento de Sistemas
ZK RIA com ZK Framework.
Tecnologia para Web JavaScript
Prof. Marco Aurelio N. Esteves
Desenvolvimento de Soluções WEB Escopos de uma Aplicação Web
Prof. Anderson M. Fernandes (Burnes)
Sistemas Distribuídos
Programação Web com PHP
Dia 1 Overview.
Protocolo HTTP e HTML Prof. Danton Cavalcanti Franco Junior
Aplicativos Web Com Orientação a Objetos
II Semana TI Raphael Zanon Rodrigues Curso ASP.NET AJAX UNIVEM - Prof. Elvis Fusco.
André Roeck Chaiene Oliveira Henrique dos Santos Lucas Wolff
Amirton Chagas
Introdução ao Desenvolvimento Web
JSON Programação de Script.
Jquery Ajax.
Tecnologias de Internet
Tecnologias de Internet
Arquitecturas de extensão do servidor HTTP CGI | ISAPI : ASP, ASP.NET Programação na Internet Secção de Programação ISEL-DEETC-LEIC Luis Falcão -
Tópicos avançados em internet B Carlos Oberdan Rolim Ciência da Computação.
Rodrigo Cristiano Silva
A autoria - II.
Web Services Desmistificando o pré-conceito.
 Muitas aplicações se faz necessário o acompanhamento da navegação do usuário armazenando informações específicas de cada um.  É comum hoje em dia acessarmos.
Conceitos de J2EE para a WEB
Faculdade de Tecnologia SENAC Pelotas
PHP e AJAX: do Request ao Framework Rafael Machado Dohms Coordenação PHPDF.
Adriano Melo Introdução ao ASP.NET Adriano Melo
RESTful Webservices Lucas Batistussi –
Formulários HTML Jobson Ronan
1 JavaScript. 2 JavaScript  Introdução  Fatos Sobre JavaScript  Embutindo JavaScript no HTML  Características da Linguagem:  sintaxe  objetos 
Professor: Márcio Amador
PrograMação para internet
Primeiro Técnico Navegadores.
Aula 1 - Fundamentos Web Servidor
IIS Web Server.
Tópicos avançados em internet B Carlos Oberdan Rolim Ciência da Computação.
LINGUAGENS DE PROGRAMAÇÃO WEB
Bruno Inojosa MCP .NET Framework
Unidade 1 – Introdução a J2EE Prof.: Henrique Santos
Introdução ao ASP.Net 1º Semestre 2010 > PUCPR > BSI Bruno C. de Paula.
Fundamentos da Linguagem C#
JavaScript Promoção: PET-SI Mini-curso de introdução a JavaScript
Trabalho de Seminários em Informática
Projeto Supervisionado no Desenvolvimento de Aplicações Profissionais na Web Introdução a Aplicações Web.
Componentes do ASP.Net 1º Semestre 2010 > PUCPR > BSI Bruno C. de Paula.
ZK RIA com ZK Framework.
Programação para Internet
Curso de Gestão da Informação Prof. Dr. Daniel A. Furtado Módulo 7 – Introdução à Biblioteca jQuery Universidade Federal de Uberlândia Faculdade de Computação.
Linguagem de Programação Web Karine Alessandra Córdova.
AJAX Alunos: Heloísa de Souza Glória Laís de Oliveira Souza
Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros.
Treinamento AJAX Waelson Negreiros Blog:
Universidade Federal de Sergipe Departamento de Sistemas de Informação Bruno Cruz Jessica Rodrigo Aragão – ASP.NET MVC 3.
Projeto Supervisionado no Desenvolvimento de Aplicações Profissionais na Web Introdução ao Projeto.
Desenvolvimento WEB II Introdução ao AJAX Professora: Kelly de Paula Cunha.
Desenvolvimento WEB II Continuação AJAX Professora: Kelly de Paula Cunha.
Desenvolvimento WEB II Ajax – Utilização de Frameworks Javascript Professora: Kelly de Paula Cunha.
Asynchronous Javascript and XML AJAX. AJAX – Motivação Início dos anos 90, a maioria dos web sites eram baseados em páginas HTML Cada ação do usuário.
1 AJAX em aplicações Rails Lívia Monnerat Castro
Banco de Dados no Cliente com HTML 5 e JS
Transcrição da apresentação:

AJAX Rodrigo Vronscki Ricardo Roger de Córdova Farias Ronny Fernandes da Cruz Tiago Coelho

O que é AJAX Asynchronous JavaScript and XML. AJAX não é uma linguagem de programação, mas uma nova maneira de usar padrões existentes. AJAX é a arte de trocar dados com um servidor e atualizar partes de uma página web sem ter que recarregar toda a página, assim criando páginas rápidas e dinâmicas.

História 90s - Páginas são totalmente recarregadas 1995    - Java Applets (client-side) 1996    - Internet Explorer lança o <iframe> 1999    - MS cria o XMLHTTP ActiveX control no IE5             - mais tarde adotado pela Mozilla, Safari, Opera e outros como XMLHttpRequest JavaScript object 2000    - Utilizado no Outlook Web Access 2004    - Gmail 2005    - Google Maps 2005    - Surge o termo "AJAX" 2006    - W3C lança o primeiro rascunho do XMLHttpRequest

Princípios O NAVEGADOR HOSPEDA A APLICAÇÃO - Navegador recebe documento mais complexos - Documento é mantido com o navegador por toda a sessão - Documento decide manipular ou passar informação ao servidor - Informações podem ser persistidas no cliente

Princípios O SERVIDOR FORNECE DADOS - Menor fluxo de dados. Trafego de dados relevantes - Retorno pode ser código Javascript, XML ou Texto - Maior tráfego no início da sessão - Eficiência ao longo do tempo

Princípios INTERAÇÃO FLEXÍVEL E CONTÍNUA - Maior rendimento na utilização da página (tempo) - Similaridade com aplicações Desktop - Melhora na usabilidade - Servidor trabalha junto com usuário, uma vez que há troca de dados, conforme o usuário interage com a interface

Princípios A CODIFICAÇÃO REQUER DISCIPLINA - Código dura do início ao fim da sessão - Deve manter performance - Eficiência na comunicação com servidor - Deve abstrair o mundo real, sem que o usuário se preocupe com velocidade, comunicação ou performance

Desvantagens - Páginas sucessivas não são registradas no Histórico - Páginas são difíceis de serem marcadas Favoritas - WebCrawlers não executam Javascript - Smartphones podem não suportar XMLHttpRequest - Pode haver um excesso de requisições ao servidor - Código complexo pode ser difícil de manter, debugar e testar

XMLHttpRequest     - O objeto de JavaScript pra realizar requisições sem recarregar a página     - Um dos parâmetros que recebe pra abrir uma conexão (método open()) é um boolean indicando se a requisição é sincrona ou asíncrona     - Requisições sincronas bloqueiam (travam) a página até a requisição concluir     - Se a requisição for asíncrona a página não é bloqueada e o cliente pode continuar navegando enquanto a requisição é realizada: isso é AJAX

XMLHttpRequest interface XMLHttpRequest : XMLHttpRequestEventTarget {   // event handler attributes            attribute Function onreadystatechange;   // states   const unsigned short UNSENT = 0;   const unsigned short OPENED = 1;   const unsigned short HEADERS_RECEIVED = 2;   const unsigned short LOADING = 3;   const unsigned short DONE = 4;   readonly attribute unsigned short readyState;   // request   void open(DOMString method, DOMString url);   void open(DOMString method, DOMString url, boolean async);   void open(DOMString method, DOMString url, boolean async, DOMString? user);   void open(DOMString method, DOMString url, boolean async, DOMString? user, DOMString? password);   void setRequestHeader(DOMString header, DOMString value);   void send();   void send(Document data);   void send([AllowAny] DOMString? data);   void abort();   // response   readonly attribute unsigned short status;   readonly attribute DOMString statusText;   DOMString getResponseHeader(DOMString header);   DOMString getAllResponseHeaders();   readonly attribute DOMString responseText;   readonly attribute Document responseXML; };

XMLHttpRequest

Bibliotecas Mais Utilizadas - JQuery:     $.ajax(); - MooTools     new Ajax(); - Prototype     new Ajax.Request(); - Extjs     Ext.Ajax.request(); - Dojo     dojo.xhrPost() e dojo.xhrGet();

Exemplo de Código <html> <head> <script type="text/javascript"> function loadXMLDoc() { var xmlhttp; if (window.XMLHttpRequest)   {// code for IE7+, Firefox, Chrome, Opera, Safari   xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5   xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); xmlhttp.onreadystatechange=function() {   if (xmlhttp.readyState==4 && xmlhttp.status==200) {    document.getElementById("myDiv").innerHTML=xmlhttp.responseText;   } xmlhttp.open("GET","ajax_info.txt",true); xmlhttp.send(); </script> </head> <body> <div id="myDiv"><h2>Let AJAX change this text</h2></div> <button type="button" onclick="loadXMLDoc()">Change Content</button> </body> </html> http://www.w3schools.com/ajax/tryit.asp?filename=tryajax_first

Exemplo Prático  

Aplicações de Grande Porte

Aplicações de Grande Porte

Referências Wikipedia (en) W3Schools.com W3C         http://en.wikipedia.org/wiki/Ajax_(programming)         http://pt.wikipedia.org/wiki/AJAX_(programa%C3%A7%C3%A3o) W3Schools.com         http://www.w3schools.com/ajax/default.asp W3C         http://www.w3.org/TR/XMLHttpRequest/

AJAX Rodrigo Vronscki Ricardo Roger de Córdova Farias Ronny Fernandes da Cruz Tiago Coelho