Le Web 2.0, évolution ou révolution? | Janvier 2008


Fiches techniques sur le Web 2.0

Vous vous demandez ce que signifient Ajax, les «embed objects» et le Web sémantique? Toutes les réponses à vos questions se trouvent dans nos fiches techniques.

Ajax fait-il briller le web 2.0?

Non, il ne s'agit pas d'un produit de nettoyage. Cependant si Ajax ne fait pas briller le web 2.0, il fait pleinement partie de sa révolution. Ajax apporte de nouvelles perspectives lors de la conception de toute application web. L'interactivité est fortement amplifiée et se traduit par un confort d'utilisation accru. Mais finalement, qu'est ce qu’Ajax? Nous allons tenter ci-après de définir et démontrer quelques unes de ses possibilités.

Un peu d'histoire

Tout a commencé en 2001 avec l'apparition de l'objet XMLHttp implémenté par Microsoft pour Internet Explorer 5 en tant qu'objet ActiveX. Pour la première fois, il était possible d'envisager une application web asynchrone, c'est à dire qu'il est inutile de rafraîchir la page pour recevoir du nouveau contenu. La puissance de cet objet fut rapidement identifiée et l'ensemble des navigateurs, en commençant par Mozilla, se sont vus dotés nativement d'un objet similaire appelé XMLHttpRequest. Le 18 février 2005, Jesse James Garett (informaticien américain) introduit le terme Ajax dans une publication sur le site web Adaptive Path. Depuis, ce terme n’a cessé de gagner en popularité auprès des développeurs d'applications web, des webmasters et des journalistes spécialisés.

Définition

Ajax n'est pas une technologie en soit. Il s'agit d'une abréviation signifiant "Asynchrone JavaScript and XML" et englobant :

Dans un modèle classique d'application web, l'utilisateur clique sur un lien ce qui déclenche l'envoie d'une requête vers le serveur. Le serveur traite les données puis retourne le résultat au navigateur. L'utilisateur doit donc patienter chaque fois qu'il demande de nouvelles données.

Modèle d'application web classique (Synchrone)

synchrone

Dans un modèle d'application web Ajax, l'envoi d'une requête au serveur est déclenché par le navigateur en lieu et place de l'utilisateur. Ce qui permet à l'utilisateur d'obtenir de nouvelles données pendant qu'il consulte les données d'ores et déjà affichées.

Modèle d'application web classique (Synchrone)

asynchrone

Usuellement, le moteur Ajax est écrit en JavaScript. Ce langage de programmation est interprété comme l'HTML par le navigateur Internet. Le moteur Ajax contrôle si de nouvelles données sont demandées par l'utilisateur et par conséquent si une requête doit être envoyée au serveur.

Par exemple, lorsqu'un utilisateur consulte un tableau de données et qu'il souhaite trier différemment ces données:

  • Dans le modèle d'application web classique, une requête est envoyée au serveur lui demandant de retourner l'ensemble des données triées différemment ;
  • Dans le modèle d'application web Ajax, un appel au moteur Ajax est envoyé, celui-ci est capable de trier ces données sans faire de requête au serveur.

Il est maintenant évident qu'Ajax permet de gagner du temps lorsqu'il s'agit de manipuler des données déjà téléchargées par l'utilisateur. N'oublions pas que sur Internet la transmission des données peut s'avérer fastidieuse selon le type de connexion dont dispose l'utilisateur.

modeles

Avantages & inconvénients

Les avantages sont nombreux, à commencer par l'optimisation de la vitesse à laquelle l'application web répond aux actions de l'utilisateur les données sont traitées en partie localement par le navigateur. L'ensemble des technologies englobées par Ajax respectent les standards du W3C et de l'IETF assurant la portabilité. Les coûts d'infrastructure liés à la densité de consultation sont diminués, puisque le traitement de certaines données est délégué au navigateur de l'utilisateur. D'autre part, le développement d'applications peu complexes est également amoindri puisque des "frameworks" légers et stables existent (voir liens utiles).

Par contre, ce type d'applications implique l'autorisation de l'exécution de code JavaScript par le navigateur, ce qui laisse craindre des failles de sécurité sans un antivirus efficace. D'autre part, ce genre d'applications est difficilement utilisable sur les téléphones mobiles, puisque ces derniers sont pour l'instant incapables, à l'exception de certains "smartphones", d'exécuter le code JavaScript. Le référencement d'applications basées sur le modèle Ajax peut s'avérer plus difficile que pour les applications basées sur un modèle classique, car les robots d'indexation des moteurs de recherche négligent le contenu dynamique.

Quelques manières d'échanger du contenu

Syndiquer du contenu apparaît aujourd'hui comme une évidence en matière de marketing sur Internet. Lorsqu'on parle de syndication, on pense souvent aux flux RSS en oubliant les autres méthodes qui peuvent s'avérer bien plus puissantes aux possibilités infinies.

Evolution de l'HTML

L'HTML a fortement évolué depuis ses débuts en 1989. Cette évolution vise à permettre de nouvelles fonctionnalités particulièrement liées à la présentation. La version actuellement interprétée par les navigateurs est la version 5 appelée XHTML. Cette version à introduit de nouvelles balises permettant d'inclure dans une page du contenu provenant de différents sites. Ce type de syndication est natif au sein de l'HTML à ne pas confondre avec les protocoles de syndication utilisés par les flux RSS.

Techniques et résulats

Il existe aujourd'hui 3 balises permettant d'échanger du contenu: "Object", "Embed" et "Iframe". Chacun de ces attributs a ses avantages et ses inconvénients. Seuls les développeurs d'application web et les webmasters sont touchés par les spécificités de chacune des ces balises. Par analogie, on peut comparer ces balises à l'attribut "img" permettant d'insérer une image dans une page web. Il s'agissait à ce moment de lier une image externe à la page. Par contre ces nouvelles balises ne se limitent pas à une image. Il est possible d'intégrer n'importe quel type de contenu en passant par des application complexes. Par exemple, pour utiliser une application quantifiant le nombre de visites d'une page comme Google Analytics ou Xiti, un petit script est fourni par le prestataire de ce service. Ce script est inséré dans la page même si celui-ci est invisible pour l'internaute. Chaque fois que la page est visitée, le script le signale au prestataire de service qui peut alors comptabiliser la visite. Voici quelques exemples pour lesquelles le contenu est visible par l'internaute:

Vidéo Youtube

 

 

Transparent slideshare

 

 

Musique songza

 

 

Carte Google Maps

 

Publicité Google Adsense

banner

*Il s'agit d'un exemple cette publicité ne fonctionne pas

Comment insérer ce type de contenu sur son site?

Les sites proposant du contenu utilisent deux méthodes de partage:

  • Soit un lien hypertexte pointant sur la page où se trouve le contenu
    Exemple: http://songza.com/listen?z=l_T9OJ3vQSY
  • Soit un petit code affichant directement sur son site le contenu (Ce que l'on fait dans les exemples ci-dessus)
    Exemple: <div class="" width="425" height="114"><div name="movie" value="http://songza.com/e/listen" class=""></div></param> <div class="" src="http://songza.com/e/listen" width="425" height="114"></div></div>

Dans les deux cas, il suffit de chercher sur les sites partageant du contenu le lien ou le code, de le copier et de l'insérer dans la page web en question. Voilà comment nous avons inséré les exemples sur cette page.

Le web 2.0 est mort, vive le web 3.0

Beaucoup se demandent encore ce qu'est le web 3.0. Apparu début 2006, le web 3.0 – également appelé web sémantique – est utilisé pour décrire l'évolution, du web 2.0. Il préfigure le web de demain: on en parle comme d'une base de données gigantesque ou encore un espace encore plus ouvert à la 3D. Penchons-nous sur une tentative de définition d'un web de demain… déjà si présent.

On pourrait définir le terme web 3.0 par la conjonction des graphismes vectoriels du web 2.0, et l'accès par un web sémantique à une grande quantité de données. L'accès à ces données se faisant via des applications qui ne sont pas des navigateurs. Entrons dans les caractéristiques du web 3.0

On ne se réfère plus uniquement à un site web ((X)HTML), il peut être aussi une solution Web comme une application (X)HTML plus une base de données (XML, MySQL, ...)).

Il doit être indépendant de tout type de support (taille de l'écran, imprimantes, etc.),docn monter une grande mobilité. Il doit être indépendant de tout système d'exploitation, et de tout matériel (marque, fabriquant, plugin, logiciel,)... soit présenter une certaine universalité.

Auter mot clé: l'accessibilité. Strictement en conformité avec le W3C, ce qui permet de rendre d'autres logiciels accessibles et ouverts aux bases de données diverses. (Le W3C est un consortium fondé en 1994 pour promouvoir la compatibilité des technologies du web telles que HTML, XHTML, XML, RDF, CSS, PNG, SVG et SOAP. Le W3C n'émet pas des normes au sens européen, mais des recommandations à valeur de standards industriels.)

On peut également tenter de rassembler les technologies et concepts suivants comme composant du web 3.0:

On assiste tout d'abord à une convergence des systèmes d'information géographique, des réseaux sociaux et de la gestion de projets. Le web 3.0 intègre les formulaires XForms.

On parle également de web sémantique. Il utilise l'intelligence artificielle.

Son architecture est cognitive, par exemple ses calculs artificiels tentent de ressembler au comportement du système cognitif humain ou qui agit - selon une certaine définition- “intelligemment”.

Il est composé d'applications composites ou mashup. Le mashup est une application combinant du contenu provenant d’applications hétérogènes afin de créer un nouveau site. On utilise le plus souvent l'objet XMLHttpRequest, AJAX côté client, et les API (ou services web) des sites dont on mixe le contenu. Google, Amazon, Yahoo!, eBay, ou FedEx utilisent ces mashup afin de permettre, par exemple, à un commerçant de présenter sur son site l’état d’avancement d’une livraison sous-traitée à un logisticien. Les mashups sont souvent mal perçues et leur situation commerciale est fragile puisqu’ils exploitent des données qui ne leur appartiennent pas.

Il modifie la représentation traditionnelle des connaissances. En effet, le web 3.0 renouvelle le sens habituel du terme qui servait à représenter et à organiser le savoir humain dans un but d’utilisation et de partage en introduisant des ensembles de termes et de concepts fondant le sens d'un champ d'informations, que ce soient par les métadonnées d'un espace de données, ou les items d'un domaine de connaissances.. Un certain nombre de langages ont été développés dans cette perspective, comme les standards RDFS, SKOS et OWL du W3C ou la norme ISO Topic Maps.

Il généralise L'OpenID (système d’authentification décentralisé permettant une authentification unique).

La liste n'est pas exhaustive dans ce monde en constante évolution. Difficile de prédire l'évolution du web 2.0 en web 3.0 tant les comportement et demandes d'internautes intéragissent mutuellement sur le développement des technologies.

Pour l’instant il est encore pour beaucoup, surtout ça:

web2city

….soit un vaste assemblage de logiciels interagissant les uns avec les autres… dans la plus parfaite anarchie car le web 2. 0 c’est aussi une gigantesque machine en mouvement…

Liens relatifs au sujets:

Liens utiles:
http://extjs.com/
http://script.aculo.us/
http://www.jquery.info/
Ruby on Rails
http://mootools.net/

Sources:
http://adaptivepath.com/ideas/essays/archives/000385.php
http://fr.wikipedia.org/wiki/Asynchronous_JavaScript_and_XML
http://www.xul.fr/xml-ajax.html
http://www.slideshare.net/mikeh/ajax-et-accessibilit
http://siddh.developpez.com/articles/ajax/

Quelques manières d'échanger du contenu

Sources:
http://www.htmlcodetutorial.com/embeddedobjects/_EMBED.html
http://fr.wikipedia.org/wiki/Hypertext_Markup_Language
http://msdn2.microsoft.com/en-us/library/ms535245(VS.85).aspx
http://htmlhelp.com/reference/html40/special/object.html





Réalisé par Caroline Veron et Luis Clara-Fernandes


dossier préparé par:


Luis Clara-Fernandes, Bénédicte Furrer, Pascal Rulfi, Anne-Laure Vaudan, Caroline Véron