WS-Express banner

05 mai 2005

Comment faire du neuf avec du vieux ... ou les ravages du marketing viral

Le nouveau concept à la mode depuis quelque temps parmi les développeurs Internet porte le nom d'une lessive : Ajax. Depuis le 18 février 2005, l'acronyme se répand comme une trainée de poudre (!), notamment dans les blogs, forme de marketing viral que ne renierait pas Colgate-Palmolive ... Même les vénérables Wall Street Journal et New York Times se sont fendus d'un article consacré à cette "nouvelle" technique, c'est tout dire.

Le terme a été forgé par Jesse James Garrett, co-fondateur d'une jeune société de conseil, dont le principe a été décrit dans un article intitulé "Ajax: A New Approach to Web Applications" publié récemment.

Cependant, comme le dit aimablement Jean Paoli, l'un des trois auteurs du standard W3C XML :
"I've been doing Ajax for years but it's got a name now.".

En effet, ce modèle de programmation repose sur l'utilisation du composant ActiveX XMLHttpRequest disponible depuis la sortie du navigateur Internet Explorer 5.0 (depuis peu donc ...). Une implémentation équivalente a été réalisée ensuite dans les navigateurs Mozilla (et Netscape) et plus récemment dans Safari, Konqueror et Opera. Bref, cela fait plusieurs années que cette technique est utilisable et a été utilisée.

Plus généralement, ce modèle découle directement de l'approche DHTML initiée par les travaux de l'équipe de Adam Bosworth (Scott Isaacs, Chris Lovett, ...) autour du navigateur Internet Explorer 4.0 comme le rappelle Scott Isaacs, avant l'apparition de XML (le X de Ajax).

Alors, pourquoi en parle-t-on autant aujourd'hui ? Parce que Googlemania (entre autres) : Suggests (voir dissection du code ici), GMail, Maps (voir dissection du code ici), ... Faut-il sentir la patte de Adam Bosworth, ex-BEA, ex-Microsoft, derrière ce choix technologique récent de Google ?

Pour finir, ce qui se cache en réalité derrière cette soudaine éruption marketing, c'est la question du concept de client riche comme le rappelle Mary Jo Foley. Chez Microsoft, celle-ci passe par les smart-clients et l'utilisation du framework .NET (en phase de diffusion rapide sur les postes utilisateurs via windows XP). Le modèle Ajax constitue l'une des approches possibles pour développer un framework de client riche, mais n'est pas la seule.

Il faut noter enfin qu'il est également possible de réaliser des invocations asynchrones de services Web depuis longtemps via un autre composant d'origine Microsoft, utilisable aussi depuis l'apparition du navigateur Internet Explorer 5.0 : il s'agit du behavior WebService capable de fonctionner au choix en mode synchrone ou asynchrone (ce dernier par callback de méthodes Javascript).

Cependant, ce composant n'est pas supporté en production car cette approche, pas plus que l'approche Ajax, ne va dans le sens de l'évolution souhaitée par Microsoft.

Aucun commentaire: