Ajax : Qu'est-ce que c'est ?
3 janvier 2007 —"Asynchronous JavaScript and XML" ; voila ce que signifie le terme "Ajax"[1].
Ce terme a été défini par Jesse James Garrett, dans son article du 18 février 2005 intitulé "Ajax: A New Approach to Web Applications".
L'idée qui se cache derrière la notion d'Ajax est la possibilité, depuis une page Web, d'effectuer, en arrière plan[2], des appels à des programmes sur un serveur, et de ne mettre à jour qu'une partie de la page avec le résultat du programme - et non l'intégralité de la page, comme on a l'habitude de le voir sur la plupart de sites Web.
Lorsque l'on parle d'Ajax, on pense généralement à l'utilisation combinée d'une partie des technologies suivantes :
- HTML / XHTML : Pour le contenu des pages Web
- CSS : Pour la présentation de ces pages
- Javascript : Pour la dynamicité au sein du navigateur - éventuellement, en manipulant le DOM
- Un langage permettant de structurer des données, pour les échanger au travers des appels Ajax : XML pour AJAX, ou JSON (ou autre : texte libre, HTML[3], ...)
- Une méthode permettant, depuis Javascript, d'effectuer des appels - asynchrones - au serveur : en général, une instance d'objet XMLHttpRequest
Notes
[1] Certains utilisent l'acronyme "AJAX", mais le 'X' n'étant pas nécessairement vrai, ce n'est pas toujours bien approprié ; un petit tour sur google sur "AJAX vs Ajax" peut être enrichissant
[2] sans bloquer la fenêtre du navigateur, donc