Ajax = Asynchronous Javascript and XML
C'est un ensemble de technologies couramment utilisées depuis des années. Les Frameworks Ajax induisent une méthode de développement de sites Web 2.0 plus souple. Les applications ajax proposent des fonctions similaires aux logiciels conventionnels. Les navigateurs ne supportant pas tous les technologies Ajax, il est nécessaire de recourir à des clients riches qui permettent d'exploiter ses fonctions et son ergonomie.
Les avancées du Web 2.0 reposent sur des technologies connues de longue date, éprouvées et stables. Ainsi, les outils constituant l'environnement Ajax, Javascript, CSS, XHTML... peuvent être combinés entre eux pour enrichir le contenu des sites Web 2.0.
Si le concept du Web 2.0 est une idée relativement neuve, les technologies qui le mettent en oeuvre ont, quant à elles, quelques années d'existance. L'environnment technique, Ajax, est en effet constitué d'un ensemble de briques déjà disponibles mais qui trouvent leur valeur ajoutée dans leur utilisation conjointe. Il est d'ailleurs intéressant de noter que les premiers sites aujourd'hui reconnus comme étant de type Web 2.0 sont d'abord passés relativement inaperçus. Certes, leur efficacité a rapidement commercé à étonner. Mais il a fallu quelques mois avant qu'on s'aperçoive que leurs concepteurs, par leur excéllente connaisssance de la palette des outils de développement Web, avaient tout simplement ouvert la voie à une nouvelle race d'applications. Quels sont donc ces technologies qui, une fois réunies, font de telles merveilles? Commençons par le point d'entrée traditionnel de l'examen des sites, la couche de présentation. Elle est dévolue au langage XHTML et aux feuilles de styles CSS (Cascading Style Sheets), c'est-à-dire à des outils standardisés de longue date. Pour mémoire la recommandation CSS 2.0 a été publiée en mai 1998. XHTML, pour sa part, doit parfois se travestir en simple HTML car certains navigateurs n'acceptent pas les documents déclarés comme étant en XHTML.
Ensuite, l'affichage dynamique ainsi que la couche d'interaction entre l'utilisateur et l'application se fonde sur le standard Dom (Document Object Model). Dom est une API qui expose un certain nombre de méthodes conçues pour l'accès et la manipulation des plus petites parties d'un document. Sans rentrer trop avant dans les détails techniques, il faut tout de même souligner que Dom permet la création d'éléments complexes réellement à la volée, c'est-à-dire sans avoir recours à l'insertion de HTML ou de CSS dans la page. Il autorise également la manipulation directe des tags du document mais aussi celle du texte sans ses tags. De même, l'insertion, la modification ou la suppression de texte n'affectent que le texte même, et sa mise en page. Enfin, et c'est sans doute là le grand avantage de Dom, toutes ces possibilités sont indépendantes du type et de la version du navigateur. C'est un progrès considérable, dans la mesure où l'on a plus à coder des versions différentes de documents selon le navigateur cible, ce qui diminue le temps de production et augmente sensiblement l'efficacité des applications.
Pour ce qui concerne l'échange de données entre applications, serveurs, processus et services, c'est bien évidemment le langage XML qui sert d'espéranto. XML, a pour avantage de décrire les données qu'il véhicule. Chaque élément d'information est entouré d'une arborescence de balises qui permet de savoir exactement de quoi il s'agit. Qui dit XML dit par ailleurs transformations XSL ou XSLT, c'est-à-dire passage par une moulinette de mise en forme des données. Les informations XML, brutes de formes, peuvent en effet être modifiées dans leur apparence mais aussi dans leur contenu. Le moteur de transformation XSL est ainsi capable, selon un système de programmation par règles, d'alimenter un document en fonction des besoins de celui-ci. Prenons un exemple: selon que l'acheteur sur votre site marchand est localisé en Europe ou hors de la CE, la page Web qu'il consulte recevra, lors de sa mise en page dynamique, un prix avec ou sans TVA mais dans tous les cas en Arial 12 gras bleu sur les pages de promo, ou en Courrier new 10 italique marron sur les pages de déstockage. Et cela bien que le prix en question ne figure qu'en valeur hors taxe dans un fichier XML en texte brut issu d'une extraction en temps réel sur la base de données.
Ajax : Ajax compte déjà ses pères fondateurs, parmi lesquels Rico , l'éditeur d'un moteur Ajax open source qui, par simple appel dans les pages Web, peut aller jusqu'à transformer un site existant en une application Web 2.0.
Client riche ou smart client : A mi chemin entre client lourd (client serveur) et client léger (navigateur), ce terme se réfère à un poste client pourvu d'une interface et d'un ensemble de commandes qui accèdent au Web sans passer par un navigateur traditionnel. Dans ce cas, l'interface du client se confond avec celle du Web et les interactions entre les deux sont totales. On peut ainsi utiliser le glisser-déplacer de l'un vers l'autre, par exemple. Avantage du client riche: pas de déploiement et une maintenance aisée.
Atlas, un Ajax à la sauce .Net : Compte tenu de l'aspect stratégique que revêt pour lui le Web en général et la guerre contre Google en particulier, Microsoft ne pouvait pas laisser passer Ajax sans réagir. D'où la naissance d'Atlas, une plate-forme de développement Web 2.0 basée sur la même approche technique qu'Ajax mais profitant des ressources .NET largement répandues dans les systèmes d'informations du monde entier. A priori, Atlas n'a que des vertus. Il ajoute à Javascript une orientation objet et, plus globalement, l'enrobe d'une couche d'API .Net familière aux développeurs. Grâce à cette couche, plus besoin d'écrire du code Javascript, les appels déclaratifs aux API suffisent, d'où une productivité accrue. Les applications Atlas sont compatibles avec tous les navigateurs, ce qui, là aussi, va dans le sens de la productivité. Enfin, l'environnement de programmation Atlas n'est autre que Visual Studio 2005, d'où une approche RAD ultra facile pour des applications bénéficiant par défaut d'une ergonomie maximale. Mais ces ajouts signés Microsoft font d'Atlas une technologie propriétaire concurrente des autres Ajax. Il se profile ainsi comme un Ajax.Net qui, en tant que tel, va bénéficier d'un support digne de ce nom, d'un roadmap relativement stable et d'une interaction réelle avec le monde Windows et les nouvelles briques de Vista. Pour certains c'est un gage de pérennité. Pour d'autres, c'est une mainmise supplémentaire de l'éditeur sur l'informatique mondiale.