TUTORIEL CLIENTS WEB 
Ajax, le retour de JavaScript
Retour en force du fameux langage client par le biais de la reconnaissance d'une technologie pourtant ancienne. Analyse d'un retour en grâce du vilain petit canard des langages de programmation. (30/06/2005)
Création et chute
JavaScript a depuis son lancement été déconsidéré. Créé par une seule personne pour subvenir à certains besoins en matière d'interaction, nommé en référence à un langage plus sérieux et solide (son nom original était LiveScript avant d'être JavaScript, puis aujourd'hui, officiellement, ECMAScript), utilisé à mauvais escient à l'époque du tout dHTML et des interfaces ne fonctionnant que sur un type de navigateur... JavaScript est au fil des années devenu une connaissance indispensable mais astreignante du développeur Web.

L'astreinte tenait à l'époque surtout dans la reconnaissance des navigateurs : les deux principaux, Netscape Communicator et Internet Explorer, n'implémentaient chacun que les parties du langage qui les intéressaient. Résultant : des scripts fonctionnaient sur l'un mais pas sur l'autre. En conséquence de quoi, les développeurs devaient jongler avec la détection de navigateurs et la reconnaissance de fonctionnalités pour parvenir à faire faire au navigateur ce qu'ils voulaient.

Standardisation et retour
Ces dernières années ont cependant vu une normalisation des implémentations de JavaScript, malheureusement après cette vague de "mauvais" JavaScript qui lui a fait perdre une grande partie de sa crédibilité. À l'instar de XHTML et CSS, l'implémentation de JavaScript devient plus solide, mais ne parvient pas à remonter la pente des déceptions précédentes. XHTML et CSS sont âprement défendus et promus par les développeurs Web, tandis que JavaScript reste de côté.

L'étincelle vient par le biais de deux projets soutenus par une grande entreprise : Google Suggest et GMail (et, dans une moindre mesure, Google Maps), lancés par Google. On s'aperçoit alors que JavaScript est capable de charger des données de manière asynchrone (sans rechargement de la page) sur les navigateurs modernes, donnant des applications Web aussi intuitives et réactives que ses cousines de bureau. Il faut cependant trouver une manière d'expliquer qu'il s'agit ici d'une "nouvelle" manière d'utiliser JavaScript, afin de convaincre les réticents.

C'est l'agence Adaptative Path, par le biais de l'un de ses directeurs Jesse-James Garret, qui propose dans un article un acronyme décrivant cette méthode de travailler avec JS : AJAX, pour Asynchronous JavaScript + XML. S'il simplifie trop l'approche technologique, cet article a le mérite de mettre un nom sur une pratique, donc de créer un buzz autour et de générer des demandes. Les développeurs ne parlent plus de JavaScript, mais de Ajax, et l'explosion des projets s'y conformant dans les derniers mois montre l'intérêt renouvelé pour les applications Web dynamiques.

La technique
Ajax n'offre pourtant rien de neuf : la possibilité de charger des données asynchrones (pas seulement XML) au sein du navigateur ne date pas d'hier, à commencer par l'apparition des cadres invisibles (frames), des cadres intégrés (iframes, en 2002) ou de l'objet XMLHTTPRequest au sein de Explorer, repris ensuite par les autres navigateurs modernes (lire nos articles du 06/04/05 et du 13/05/05).

L'idée d'Ajax n'est donc pas tant de charger des données XML, mais de charger des données (pas seulement XML) de manière transparente pour l'utilisateur. L'objet XMLHTTP est seulement un moyen d'y parvenir, le plus populaire à l'heure actuelle, mais comme l'ont montré certains projets cités, ce chargement asynchrone peut aussi bien se faire par le biais de frames.

L'engouement pour Ajax n'en est pas moins réel, malgré la sensation d'effet de mode et les possibles problèmes d'accessibilités soulevés et non encore résolus (notamment l'inutilité du bouton Retour). Les grands projets qui font usage de ces techniques restent isolés, mais l'intérêt de l'industrie se confirme alors que Microsoft cherche à prendre le train en marche par le biais de son framework Atlas.

  Forum

Réagissez dans les forums de JDN Développeurs

Ajax reprend donc à son compte l'adage "c'est dans les vieux pots qu'on fait les meilleures confitures" : en accolant une appellation nouvelle et facile à retenir pour un ensemble de technique datant du début du siècle, l'objectif est de remettre JavaScript sur le devant de la scène. Dans un Web qui devient de plus un plus en ensemble d'applications destinées à remplacer celles du bureau, ces méthodes offrent des perspectives alléchantes pour les développeurs Web, et leurs projets.
 
Xavier Borderie, JDN Développeurs
 
Accueil | Haut de page
 
 





Quand achetez-vous le plus en ligne ?
Du lundi au vendredi
Le samedi
Le dimanche

Tous les sondages