Ajax est un acronyme très à la mode de nos jours. Qui n'a pas rêvé de pouvoir rajouter le prestigieux label Ajax (Asyncronimous Javascript And Xml) à un de ses sites
web? Le but de cet article est de reprendre pas à pas le mécanisme d'auto-complétion utilisant la technologie Ajax mis en place à de nombreux endroits. L'exemple le plus parlant, et peut-être le plus abouti est celui de Google Suggest qui vous propose au fur et à
html">mesure que vous entrez le texte de votre
html">recherche les complétions les plus populaires.
Si quelque chose dans la conception actuelle de l'interaction peut porter le nom d' "élégant", c'est la création d'applications
Web. Après tout, quand était-ce la dernière fois que l'on vous à fait l'éloge de quelque chose quand à la conception de l'interaction d'un produit qui n'était pas sur le
Web? (OK, à part iPod.) Tous les nouveaux projets sophistiqués, innovateurs sont en ligne.
Malgré cela, les concepteurs d'interaction
Web ne peuvent être sans éprouver un sentiment d'envie vis à vis de nos collègues qui créent du
logiciel de bureau. Les applications de bureau ont une richesse et une réactivité qui paraît inaccessible sur le
Web. La même simplicité qui à permis au
Web une prolifération rapide crée également une faille entre les expériences que l'on peut fournir et les expériences que les utilisateurs peuvent obtenir d'une application de bureau.
La faille est comblée. Regardez un peu à Google Suggest. Guettez la façon dont les termes suggérés sont mis à jour lorsque vous tapez, presque instantanément. Maintenant regardez à
Google Maps. Agrandissez. Utilisez votre curseur pour saisir la carte et la déplacer un peu. Là encore, les choses se passent presque instantanément, sans avoir à attendre le rechargement des pages.
Google Suggest et
Google Maps sont deux exemples d'une nouvelle approche pour les applications
Web que nous à Adaptive Path nous avons appelée Ajax. Le nom est un raccourci pour Asynchronous JavaScript + XML (JavaScript + XML asynchrones), et il représente une avancée fondamentale dans ce qui devient possible sur le
Web.
Définissons Ajax
Ajax n'est pas une technologie. C'est en fait plusieurs technologies, chacune s'étant développée par elle-même, et qui s'assemblent dans de nouvelles voies puissantes. Ajax incorpore:
une présentation basée sur des standards utilisant XHTML et CSS;
un affichage dynamique et une interaction utilisant le Modèle Objet Document;
l'échange de données et leur manipulation en utilisant XML et XSLT;
la récupération asynchrone de données en utilisant XMLHttpRequest;
et JavaScript pour les mettre en oeuvre ensemble.
Le modèle d'application
web classique fonctionne comme ceci: La plupart des actions utilisateur dans l'interface déclenchent une
requête HTTP à un
serveur web. Le
serveur accomplit quelques traitements - retrouver des données, traiter des nombres, communiquer avec divers systèmes hérités - et ensuite retourne une page
HTML au
client. C'est un modèle adapté de l'utilisation originelle du
Web comme media hypertexte, mais comme les fans de The Elements of User Experience(1) le savent, ce qui fait que le
Web est bon pour l'hypertexte ne le rend pas nécessairement bon pour les applications logicielles.