01net. web avec Google
Actualité informatique
Test comparatif matériel informatique
Jeux vidéo
Astuces informatique
Vidéo
Télécharger
Services en ligne
Forum informatique
01men
01net Pro Entreprise informatique
[ DÉVELOPPEMENT ]
Ajax, la nouvelle coqueluche du web
Les applications web ont peut-être trouvé leur chaînon manquant. Cette nouvelle technique permet de développer des applications riches et interactives sur n'importe quelle plate-forme, sans plug in.

Anicet Mbida , 01 Informatique (n° 1825), le 02/09/2005 à 07h00

On n'avait pas vu cela depuis longtemps. En quelques mois, Ajax est passé d'une technique obscure à l'acronyme en vogue qu'il faut avoir sur son CV. Les développeurs n'ont plus que ce mot à la bouche. C'est la nouvelle pierre philosophale des applications web. Celle qui va tenir les promesses de Java : créer des applications web interactives, et fonctionnant sur n'importe quel navigateur.

En général, les applications web traditionnelles sont lentes. Et leur interactivité est illusoire. A chaque clic, une requête est envoyée, et la page HTML réactualisée. Ajax est donc une nouvelle technique de développement. L'acronyme signifie Asynchronous Javascript and XML. Ses applications sont écrites en Javascript. Elles échangent leurs données en asynchrone avec le serveur web, via Soap ou un quelconque service web. Puis, elles contrôlent l'affichage sur le navigateur en HTML dynamique. C'est comme si chaque page web était une mini-application client-serveur.

Le résultat est spectaculaire

Il n'y a qu'à observer la différence entre les cartes de Maporama.fr et celles de Via-michelin.fr . Dans le premier cas, la navigation est ralentie par les rafraîchissements successifs. Dans le second, il est possible de zoomer et de recentrer le plan comme s'il s'agissait d'une application locale. L'ensemble est plus réactif, car les requêtes s'effectuent en tâche de fond. Mais les exemples les plus éloquents restent ceux de Google Maps, GMail ou Outlook Web Access. Des applications rapides, avec des fonctions jamais vues, comme le glisser-déplacer ou les raccourcis clavier. Le tout, sans plug in, et compatibles avec l'ensemble des navigateurs sur toutes les plates-formes. Et c'est là le grand avantage d'Ajax, notamment face à Java ou à Flash.

Cette technique n'est pourtant pas nouvelle

Elle a été inaugurée par Outlook Web Access en 1998. Microsoft avait alors doté Internet Explorer de la fonction XMLHttpRequest, qui permet d'échanger des données de façon asynchrone avec le serveur. Mais l'exemple avait été peu suivi, car Javascript demande de la puissance processeur sur le poste client. Depuis, la vitesse des machines a décuplé, et Google, AOL et Flickr ont montré de bons exemples de mise en oeuvre. Tout s'est accéléré au mois de mars dernier, quand un consultant d'Adaptive Path a formalisé la technique et lui a donné le nom ronflant d'Ajax. Depuis, le terme s'est diffusé telle une traînée de poudre. Les frameworks se multiplient : Sarissa, Prototype, Dojo, Sajax, etc. Même Microsoft s'y intéresse. La semaine prochaine, il présentera Atlas, sa mise en oeuvre dans Visual Sudio.

Une approche plus valorisante

Pourquoi Ajax plaît-il tant aux développeurs ? Il les aide à programmer à nouveau. Beaucoup considèrent que le développement web est un retour en arrière. Avec Ajax, on met en place un modèle plus traditionnel, avec une gestion des événements où l'on réagit aux clics ou aux frappes, comme en client-serveur. Une approche bien plus valorisante que coder des scripts ou enchaîner des pages.

Du coup, certains s'emballent. Ils voient dans la nouvelle technique Ajax le modèle de développement de tous les types d'applications client dans une architecture orientée services (SOA). La technique semble pourtant loin d'être mature. Alors, simple battage médiatique ou début de révolution ?

Les limites d'Ajax

Un débogage cauchemardesque.

Il existe très peu d'outils de test et d'aide à la conception. Pour créer une interface riche, il faut connaître sur le bout des doigts les différences entre les navigateurs et tester sur chaque plate-forme pour s'assurer que le résultat est correct.

Javascript n'est pas un langage de haut niveau.

Il n'est pas totalement orienté objet, et les différences entre les plates-formes posent un problème. Et, si les lignes de code sont nombreuses, des problèmes de performance peuvent se poser.

Une technique encore peu outillée.

Son succès passera par le développement de frameworks standards. Les premiers sont apparus, capables de masquer les détails de chaque navigateur. On attend donc avec impatience le fameux framework Atlas de Microsoft.



VLC
Téléchargez gratuitement ce lecteur multimédia capable de lire n'importe quelle vidéo

publicité
Infrastructure réseau vieillissante?
Découvrez la boutique 01net !

classement FAI
Retrouvez chaque semaine le classement des fournisseurs d'accès avec ip-label 1 Numericable2 Darty câble 30Mbps3 Orange > Plus de détails
Espace Emploi

Recherche express

Battlefield 3 : Back to Karkand
De nouveaux succès et trophées, et bien plus encore !