Your SlideShare is downloading. ×
0
Sabin-Corneliu Buraga
                                                                             www.infoiasi.ro/~busaco...
Sabin-Corneliu Buraga
                                                                               www.infoiasi.ro/~busa...
Sabin-Corneliu Buraga
                                                                             www.infoiasi.ro/~busaco...
Sabin-Corneliu Buraga
                                                                                      www.infoiasi.r...
Sabin-Corneliu Buraga
                                                                               www.infoiasi.ro/~busa...
Sabin-Corneliu Buraga
                                                                                 www.infoiasi.ro/~bu...
Sabin-Corneliu Buraga
                                                                                  www.infoiasi.ro/~b...
Sabin-Corneliu Buraga
                                                                                    www.infoiasi.ro/...
Sabin-Corneliu Buraga
                                                                                   www.infoiasi.ro/~...
Sabin-Corneliu Buraga
                                                                                 www.infoiasi.ro/~bu...
Sabin-Corneliu Buraga
                                                                                   www.infoiasi.ro/~...
Sabin-Corneliu Buraga
                                                                                           www.infoi...
Sabin-Corneliu Buraga
                                                                                       www.infoiasi....
Sabin-Corneliu Buraga
                                                                                  www.infoiasi.ro/~b...
Sabin-Corneliu Buraga
                                                                                   www.infoiasi.ro/~...
Sabin-Corneliu Buraga
                                                                                    www.infoiasi.ro/...
Sabin-Corneliu Buraga
                                                                                       www.infoiasi....
Sabin-Corneliu Buraga
                                                                                www.infoiasi.ro/~bus...
Sabin-Corneliu Buraga
                                                                                 www.infoiasi.ro/~bu...
Sabin-Corneliu Buraga
                                                                                    www.infoiasi.ro/...
Sabin-Corneliu Buraga
                                                                                   www.infoiasi.ro/~...
Sabin-Corneliu Buraga
                                                                               www.infoiasi.ro/~busa...
Sabin-Corneliu Buraga
                                                                             www.infoiasi.ro/~busaco...
Sabin-Corneliu Buraga
                                                                      www.infoiasi.ro/~busaco/
Novem...
Upcoming SlideShare
Loading in...5
×

AJAX - back to the future

1,115

Published on

A short presentation regarding AJAX and related technologies. This talk was delivered within <Web /&gt; 2005 workshop on Web technologies (Iasi, Romania).

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,115
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
70
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Transcript of "AJAX - back to the future"

  1. 1. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web Reîntoarcere în viitor: AJAX Sabin-Corneliu Buraga Facultatea de Informatică, Universitatea “A. I. Cuza” din Iaşi http://www.infoiasi.ro/~busaco/ 1
  2. 2. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web “Un om nu atinge cunoaşterea decât cu ajutorul celor care o posedă.” P.D. Uspensky 2
  3. 3. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web cuprins • Preliminarii: de la Web 1.0 la Data Web (Web 2.0) • “Tehnologia” AJAX (Asynchronous JavaScript And XML) • Utilizări şi exemple demonstrative • Concluzii: de la Data Web la Semantic Web 3
  4. 4. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web preliminarii • De la Web 1.0 la Data Web (Web 2.0) – Web 1.0 (n. 1990 – m. 2002?) – Spaţiul WWW văzut ca o platformă, în care utilizatorul îşi controlează propriile date – Servicii (nu pachete software), participare, scalabilitate, transformări ale datelor, software rulat oriunde, inteligenţă colectivă • Vezi “Design Patterns and Business Models for the Next generation of Software” (Tim O’Reilly) – www.oreilly.com 4
  5. 5. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web preliminarii • De la Web 1.0 la Data Web (Web 2.0) –Marcaje (adnotări) definite de utilizator • Vezi “Folksonomies – Cooperative Classification and Communication through Shared Metadata” (Adam Mathes) • Adnotarea (tagging) continutului del.icio.us, flickr.com • Folksonomy = folk + taxonomy 5
  6. 6. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web preliminarii • De la Web 1.0 la Data Web (Web 2.0) –Participare, nu doar publicare a datelor • Fenomenul blogging • Tehnologia RSS/Atom pentru mediatizarea (syndication) conţinutului siturilor Web • Relaţii între blog-uri via permalinks • Blogosfera = social network în stilul peer-to-peer vezi Friendster, LinkedIn, Orkut,... • Utilizatorii adaugă valoare resurselor Web 6
  7. 7. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web preliminarii • De la Web 1.0 la Data Web (Web 2.0) –Descentralizare radicală • Fenomenul BitTorent • Un serviciu devine automat mai bun cu cît mai mulţi oameni îl utilizează –Încredere radicală • Fenomenul wiki – vezi Wikipedia.org • “With enough eyeballs, all bugs are shallow” (Eric Raymond) 7
  8. 8. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web preliminarii • De la Web 1.0 la Data Web (Web 2.0) –Interacţiune bogată cu utilizatorul • Interactivitate Web similară interactivităţii convenţionale cu utilizatorul • Avantajele Web-ului (ubicuitate, date distribuite via hipertext, posibilităţi de căutare etc.) + interacţiune sofisticată + utilizabilitate • Pioneri: Gmail, Google Maps, Writely 8
  9. 9. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web AJAX • Cine/ce este AJAX? – Erou mitologic implicat în războiul troian (Encarta Reference Library) – Asynchronous JavaScript And XML (Jeese James Garrett) 9
  10. 10. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web AJAX • AJAX nu este o tehnologie, ci reprezintă o suită de tehnologii deschise, incorporând: – Limbaje standardizate de prezentare a datelor (XHTML, CSS) – Redare & interactiune via standardul DOM (Document Object Model) – Interschimb & manipulare de date prin XML si/sau XSLT – Transfer asincron de date via XMLHttpRequest – Procesare prin ECMAScript (JavaScript) 10
  11. 11. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web AJAX • Componenta de bază este obiectul XMLHttpRequest – Permite realizarea de cereri HTTP (e.g., GET şi POST) dintr-un program rulând la nivel de client (browser) spre o aplicaţie de pe server, într-un mod asincron – Nu necesită reîncărcarea paginilor Web – Uzual, datele vehiculate între programele client şi server sunt marcate în XML (Extensible Markup Language) 11
  12. 12. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web AJAX DOM open (“GET”) Client Server (browser) Web open (“POST”) send (...) XMLHttpRequest Server aplicatii Fereastra navigatorului Documentul XML 12
  13. 13. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web AJAX • Aspecte importante: – Evitarea încărcării întregii pagini • Pro: cu XMLHttpRequest şi DOM se pot modifica doar fragmente de document • Contra: bookmarking-ul poate fi compromis – Distincţia dintre aplicaţie Web şi sit Web • Trebuie să primeze aşteptările (expectations) utilizatorului – vezi Human Interface Guidelines – Oferirea de alternative la AJAX, când suportul pentru el nu există implementat – Eliminarea paginilor de confirmare 13
  14. 14. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web AJAX • Principii de proiectare: – Minimizarea traficului dintre browser si server – Stabilirea unui mod de interacţiune clar (interacţiune HTML versus AJAX versus aplicaţie convenţională) – Evitarea confuziilor, prin adoptarea convenţiilor de interacţiune Web/clasică – Eliminarea distragerii utilizatorului (e.g., folosirea de animaţii gratuite) – Adoptarea AJAX pentru creşterea utilizabilităţii, nu doar de dragul tehnologiei 14
  15. 15. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web AJAX • Câteva şabloane arhitecturale (Michael Mahemoff) – Tratarea evenimentelor la nivel local – Reîmprospătarea periodică a conţinutului – Anticiparea download-urilor (pre-încărcarea datelor ce vor fi solicitate) – Transmiterea explicită a datelor spre server – Oferirea de posibilităţi de bookmarking – Detalii la AJAXPatterns.org 15
  16. 16. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web AJAX • O serie de şabloane de prezentare a datelor: – Folosirea proprietăţilor CSS – Adoptarea principiilor de utilizabilitate – Indicarea “vârstei” informaţiei afişate – Oferirea de indicii privind ce date au fost deja transmise serverului şi ce date se află în aşteptare (pending) pentru a fi transmise 16
  17. 17. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web AJAX • Şabloane de interacţiune – Similare celor disponibile in cazul aplicaţiilor clasice: • Drag & drop • Popup data input • Popup information • Highlighting • Auto-completion • ... 17
  18. 18. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web concluzii • AJAX este una dintre componentele-cheie a aplicaţiilor Web 2.0 – A9.com, EpiphanyRadio, Flickr, Google Maps, Google Suggest, Orkut,... • Se poate considera că – via AJAX – se pot implementa servicii Web asincrone, în stilul REST (REpresentational State Transfer) – Vezi “Building Web Services the REST Way” (Roger Costello) – Vezi “REST and the Real World” (Paul Prescod) 18
  19. 19. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web concluzii • AJAX poate fi unul dintre elementele de construcţie a Web-ului social (Social Web) – Hiperlegături între persoane şi organizaţii, nu doar între maşini şi documente – Legături persistente independente la schimbări – Rezolvarea problemelor legate de intimitate personală (privacy) şi încredere (trust) – Solutia: constituirea identificatorilor XRI (Extensible Resource Identifiers) – Vezi “The Social Web: Creating an Open Social Network with XDI” (Drummond Reed et al.) 19
  20. 20. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web concluzii • AJAX & Web-ul de date (Data Web) – Data Web ≡ soluţie simplificatoare pentru interschimb de date, bazată pe principiile arhitecturale ale Web-ului şi pe conceptele de bază ale serviciilor Web şi Web-ului semantic – Datele şi ofertanţii de date vor fi identificate via XRI, reprezentarea şi “legarea” datelor se vor face printr-o schemă XDI (XRI Data Interchange), iar interschimbul de date se va realiza graţie serviciilor XDI (extensii ale serviciilor Web actuale) – Vezi şi “The Dataweb” (Drummond Reed) 20
  21. 21. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web concluzii • Aplicaţii ale Web-ului social şi de date – Porţi (portaluri) de acces la contacte personale – Filtre de încredere (trust filters) – Managementul inteligent al e-mail-ului – Calendare de evenimente & semne de carte generate automat – Auto-registration, auto-login, auto-personalization – Protecţia furtului identităţii digitale – Social search – Reţele de reputaţie (reputation networks) 21
  22. 22. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web concluzii • Actualele/viitoarele aplicaţii vor trebui să integreze servicii oferite de dispozitive mobile, calculatoare personale, servere etc. • Când dispozitivele & programele sunt conectate la Internet, aplicaţiile nu mai constituie artefacte software, ci devin servicii – the perpetual beta • “Useful software written above the level of the single device will command high margins for a long time to come” (Dave Stutz) 22
  23. 23. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web rezumat • Preliminarii: de la Web 1.0 la Data Web (Web 2.0) • “Tehnologia” AJAX (Asynchronous JavaScript And XML) • Utilizări şi exemple demonstrative • Concluzii: de la Data Web la Semantic Web 23
  24. 24. Sabin-Corneliu Buraga www.infoiasi.ro/~busaco/ November <Web /> 2005 • www.infoiasi.ro/~web Reîntoarcere în viitor: AJAX Întrebări? 24
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×