Web 2.0 Mihai Miu 12/9/2008 Web 2.0 Web 2.0 este un termen care descrie cea mai noua tendinta in cadrul tehnologiei World Wide Web; Web 2.0 este o evolutie cauzata de transformarea Internetului intr-o platforma; Web 2.0 are ca scop: interfata bogata, mult imbunatatita cu utilizatorul; schimb securizat de date;
colaborare si functionare mult imbunatatita intre participanti; Web 2.0 Termenul de Web 2.0 a fost prima data folosit la o conferinta in 2004; Web 2.0 prezinta dezvoltatorilor de aplicatii o gama larga de noi abordari: noi tehnologii; noi arhitecturi; noi toolkituri; Caracteristicile principale ale Web 2.0 sunt:
interfata placuta, bogata si usoara pentru utilizator; participarea utilizatorului in cadrul site-ului / aplicatiei; continut dinamic; metadate; arhitectura web bazata pe standarde, foarte scalabila.
Aplicatiile Web 2.0 / RIA Protocolul HTTP este foarte simplu, web-ul nu a fost niciodata destinat folosirii de aplicatii, doar pentru stocare si continut linkat. Aplicatiile Web 2.0 implica urmatoarele: sunt livrate prin intermediul unui browser web folosind standardele web; foarte scalabile; incearca sa fie la fel de interactive cu aplicatiile desktop; interfata bogata cu utilizatorul, de multe ori construita prin folosirea de componente sau widget-uri pre-realizate; ruleaza local intr-un mediu sigur numit sandbox (cutie cu nisip);
Diferente dintre aplicatiile Web 1.0 si Web 2.0 Intr-o aplicatie Web 1.0 pagina este principala caramida a aplicatiei; fiecare eveniment care are loc intr-o aplicatie este reprezentat prin intermediul unei pagini; aplicatiile web traditionale au activitatea centrata pe arhitectura client server dar cu un client slab; toata procesarea este facuta de catre server, si clientul este folosit doar pentru a afisa continutul; de fiecare data cand utilizatorul realizeaza o actiune si o cerere de pagina noua, serverul web raspunde prin returnarea unei alte pagini
web sau prin reimprospatarea paginii curente (incluzand si elementele fixe ale interfetei cum ar fi elementele de navigare globala). Interactiunea browser si server web pentru aplicatiile Web 1.0 Diferente dintre aplicatiile Web 1.0 si Web 2.0 Intr-o aplicatie Web 2.0 pagina este impartita in mai multe componente, widgeturi sau sectiuni de pagina; evenimentele care apar in interiorul acestor componente pot activa incarcarea de continut nou de la server fara o reimprospatare
completa a paginii; toate aplicatiile RIA introduc un layer intermediar de cod, numit client engine, intre utilizator si server; adaugarea unui client engine nu forteaza aplicatia sa se indeparteze de modul de interactiune traditional intre browser si web server, si anume cel sincron, desi majoritatea clientilor RIA introduc si posibilitatea de comunicare asincrona cu serverul. Interactiunea browser si server web pentru aplicatiile Web 2.0 Diferente dintre aplicatiile Web 1.0 si Web 2.0
Web 1.0 Datele si interfata aplicatiei sunt puternic interconectate, cand data se schimba, interfata trebuie reincarcata. Web 2.0 Interfata este indepenta de date. Modificarile din cadrul datelor nu necesita ca intreaga interfata sa fie reincarcata. De asemenea datele pot fi obtinute din alt domeniu decat interfata.
Serverul livreaza interfata si datele de Serverul livreaza interfata o singura fiecare data cand o pagina este data si are pe urma doar rolul de a fi reaincarcata. furnizor de date. Comunicarea asincrona in Web 2.0 Un concept cheie in spatele Web 2.0 este comunicarea asincrona. Acest lucru inseamna ca o pagina nu are nevoie sa se opreasca si sa astepte comunicarea de date de la / catre
server. Utilizatorul interactioneaza cu o componenta de pe pagina -> activeaza un script de cerere de informatii de la serverul web -> alt script poate raspunde cand serverul trimite inapoi informatia - > componenta din pagina updatata. Utilizatorul poate continua sa lucreaze fara sa fie constient sau informat de date care sunt interschimbate in background. Avantaje ale aplicatiilor Web 2.0
Amprenta de instalare este mult mai mica, distribuirea aplicatiei este o problema triviala sau semnificativ redusa comparativ cu o aplicatie desktop; Updatarea / upgradarea la o versiune noua este o operatie automata si transparenta pentru utilizatorul final; Utilizatorii pot folosi aplicatia de la orice computer cu o conexiune la internet;
Exista multe unelte care permit utilizarea off-line a acestor aplicatii, cum ar fi: Adobe AIR, Google Gears, Curl, si alte tehnologii; Majoritatea tehnologiilor RIA permit ca aplicatia sa fie consistenta, sa arate la fel, indiferent de sistemul de operare pe care clientii il folosesc; Aplicatiile bazate pe web sunt in general mult mai putin expuse virusarii decat un executabil; Avantaje ale aplicatiilor Web 2.0 Folosirea unui client engine aduce urmatoarele beneficii legate de performanta: cererea de resurse computationale este mult mai bine distribuita; mai multe sesiuni de client in mod concurent pentru serverul web;
comunicare asincrona; Dezvantaje ale aplicatiilor Web 2.0 Doarece aplicatiile RIA ruleaza intr-un sandbox, exista acces restrictionat la resursele sistemului; Scriptingul trebuie activat la nivel de browser; Putere de procesare la nivel de client; Timpul de download al scriptului; Pierderea de vizibilitate in fata motoarelor de cautare; Dependenta de conexiunea de internet; Probleme de securitate.
Standarde si tehnologii JavaScript limbaj de scripting la nivel de client; limbaj dinamic, slab tipizat; nu are fundamental nici o legatura cu limbajul de programare Java; principale utilizari: functii care sunt incluse in paginile HTML si care interactioneaza cu DOMul paginii (document object model); validari de date; Probleme de securitate, mai ales vulnerabilitati cross-site scripting;
Standarde si tehnologii Obiectul XMLHttpRequest XMLHttpRequest (XHR) este un API DOM; poate fi folosit de JavaScript si de alte limbaje de script pentru a transfera XML sau alte date de tip text intre un server web si un browser; datele returnate de apeluri de la XMLHttpRequest sunt deseori puse la dispozitie de catre servere de baze de date; date sub forma de: XML; HTML;
JSON; text simplu; Standarde si tehnologii Ajax termenul AJAX a fost lansat in 2005; Ajax (asynchronous JavaScript and XML) este un grup de tehnici intercorelate de dezvoltare web, folosit pentru a crea aplicatii web interactive; Ajax nu este o tehnologie; datele sunt obtinute folosind obiectul XMLHttpRequest; in ciuda numelui, folosirea JavaScript, XML sau a comunicatiei
asincrone nu este necesara. Standarde si tehnologii Ajax incorporeaza: Layerul de prezentare bazat pe standarde XHTML si CSS; Interatiune dinamica cu DOM-ul paginii;
Interschimbare de date prin folosirea de XML si XSLT; Cerere de date in mod asincron prin folosirea XMLHttpRrequest; Folosirea de JavaScript care combina totul; Critici la adresa Web 2.0 Se spune ca Web 2.0 nu reprezinta o noua versiune a World Wide Web, ci doar continua sa foloseasca asa-numitele tehnologii si concepte Web 1.0. Tehnici, cum ar fi AJAX nu inlocuiesc protocoale ca HTTP, dar mai adauga si un plus de abstractizare pe deasupra. Critici la adresa Web 2.0
Web 2.0 nu este primul exemplu de comunicare care creaza un fals, un supra-evaluat sens al valorii tehnologiei si un impact asupra culturii. Evolutia in anul 2000 a domeniului .com si a tot ce tine de el a fost o incununare retorica a sublimului tehnologic, in sensul ca si-au asigurat mai tarziu un loc sigur in jargonul de Web 2.0. Tim Berners-Lee despre Web 2.0: Nimeni nu stie ce inseamna.