Tribune : "AJAX dans les applications intranet : la révolution conceptuelle"

Thierry Gagnaire
Publié le 23 janvier 2007 à 11h55
00442705-photo-consultis.jpg
Tribune libre de Thierry Gagnaire, consultant en Technologies de l'Information à la société Consultis et expert en méthodologie de réalisation d'applications J2EE.


Les technologies Internet sont victimes de leur succès : plus les applications Web fleurissent en entreprise, plus la pression des utilisateurs et des maîtrises d'ouvrage s'accentue pour obtenir richesse graphique et interactivité. Régulièrement, des études font l'inventaire des limites du navigateur Web pour mettre en évidence la nécessité d'alternatives plus riches conservant les avantages du client léger : facilité de déploiement, respect des standards et pérennité. Parmi les technologies actuelles permettant d'enrichir le client léger, AJAX est celle qui progresse le plus rapidement sur le chemin de la maturité*.

AJAX est un acronyme pour « Asynchronous Javascript And XML » et désigne une technique de développement Web conçue pour créer des applications plus interactives. Elle permet à toute page Web d'être rafraîchie partiellement, à la volée avec des informations qui n'étaient pas accessibles au navigateur lors de l'ouverture de la page : ceci est possible grâce à une requête au serveur dès que le navigateur détecte une action ciblée de l'utilisateur. Généralement, cette requête est invisible pour l'utilisateur et ce dernier peut continuer à utiliser la page affichée, par exemple saisir un champ de formulaire. Cette possibilité de travailler sur le poste client indépendamment des requêtes au serveur supprime la plupart des temps d'attente et de chargement des écrans de l'application ; elle permet une fluidité inconnue jusqu'alors dans les applications Web, se rapprochant grandement des applications Client/Serveur en environnement graphique. Cet élément nouveau est appelé « asynchronisme », soit le premier 'A' de AJAX.

Cette interactivité repose techniquement sur une nouveauté clef, l'objet XMLHttpRequest, manipulable en javascript. Bien que celui-ci ait été introduit, sous forme d'ActiveX, par Microsoft dans son navigateur au début des années 2000, cet objet n'a commencé à être normalisé par le W3C que le 5 avril 2006. Il est dès à présent implémenté nativement dans plusieurs navigateur Web, dont Firefox de la communauté open source .

L'asynchronisme apporté par AJAX est une arme à double tranchant : par exemple, si l'utilisateur valide un formulaire avant la fin de la modification par AJAX, ce formulaire peut être dans un état instable ou incohérent même s'il est techniquement valide et enregistrable en base de données.

Un autre axe est délicat : une page initialement chargée par le navigateur correspond finalement à un ensemble d'écrans de l'application, ce qui est perturbant pour le navigateur et l'utilisateur ; par exemple, quel comportement faut-il souhaiter quand on clique sur le bouton « page précédente » du navigateur ?
De plus, le choix d'un composant AJAX, serveur ou client, s'avère nécessaire et reste délicat du fait de la multiplicité de l'offre ; aucune implémentation standard ne sera disponible avant 2007.

Même si elle repose sur des technologies utilisées depuis plus de 5 ans et qui sont toutes des standards du W3C, la technologie AJAX introduit une véritable révolution conceptuelle dans la façon d'aborder, de réaliser et d'utiliser des applications Web.

La révolution est en marche et plus rien n'arrêtera AJAX ; toutefois, les retours d'expérience obtenus chez nos clients sont encore trop peu nombreux et poussent à la prudence : il faut considérer AJAX avec les mêmes précautions qu'une technologie nouvelle, en se rappelant que c'est la simplicité qui a fait le succès du Web ; remettre en question cette notion entraîne souvent beaucoup d'incertitudes quant à l'aboutissement d'un projet. Les utilisateurs se servent quotidiennement du navigateur et sont habitués au fonctionnement classique des sites Internet ; bien que demandeurs de richesse graphique, ils pourraient bien ne pas adopter une application à l'ergonomie moins intuitive et nécessitant une formation.
La réussite de tels projets intranet implique au préalable la mise en évidence de bonnes pratiques et de dérives à éviter. Tout ne doit pas être accepté des maîtrises d'ouvrage ; il ne faut pas prendre la phase de conception à la légère ni céder à la tentation inconsidérée d'obtenir une application intranet au comportement graphique et ergonomique identique à du Client/Serveur traditionnel.

Jusqu'où est-il raisonnable d'aller avec AJAX dans une application intranet conséquente ? Du fait du manque de retours d'expérience significatifs, il est difficile de le dire aujourd'hui avec précision, mais il est possible de prévenir les risques de dérive. Il faut d'abord prendre conscience de ces risques, les identifier dans les différentes phases de projet, et émettre des recommandations pour chaque type de situation. En particulier, limiter la complexité des écrans, éviter de masquer les requêtes AJAX, identifier les cas où l'utilisateur peut être perturbé par l'environnement hybride et trouver des solutions ergonomiques simples.

  • Plus d'une centaine de frameworks et composants AJAX ont été développés en un an sur 2005/2006 ; ceux qui apportent une importante richesse graphique via l'utilisation massive de javascript, facilitent aussi ou prennent complètement en charge la maintenance du code javascript, réputée coûteuse.
Par ailleurs, l'alliance OpenAjax, fondée en février 2006 et regroupant tous les éditeurs mondiaux à l'exception de Microsoft, a annoncé le 21 septembre 2006 qu'elle publierait au début de l'année 2007 une implémentation de référence d'AJAX.
Vous êtes un utilisateur de Google Actualités ou de WhatsApp ?
Suivez-nous pour ne rien rater de l'actu tech !
Commentaires (0)
Rejoignez la communauté Clubic
Rejoignez la communauté des passionnés de nouvelles technologies. Venez partager votre passion et débattre de l’actualité avec nos membres qui s’entraident et partagent leur expertise quotidiennement.
Abonnez-vous à notre newsletter !

Recevez un résumé quotidien de l'actu technologique.

Désinscrivez-vous via le lien de désinscription présent sur nos newsletters ou écrivez à : [email protected]. en savoir plus sur le traitement de données personnelles