Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Atteint de JavaScriptite Aiguë [Cyril Durand]

Expert ASP.net Ajax et WCF, Cyril Durand parle dans son blog de point techniques sur ASP.net, ASP.net Ajax, JavaScript, WCF et .net en général. Cyril est également consultant indépendant, n'hésitez pas à le contacter pour de l'assistance sur vos projets

Actualités

  • Blog de Cyril DURAND, passionné de JavaScript, Ajax, ASP.net et tout ce qui touche au developpement Web Client-Side.

    N'hésitez pas à me contacter pour vos projets .net : architecture, accompagnement, formation, ...

    View Cyril Durand's profile on LinkedIn
    hit counters


    Expertise Commerce server et BizTalk

AJAX : mais c'est quoi au juste ?

Récemment, lors d'une réunion avec un intégrateur HTML, il m'a dit :

"Donc ça c'est en AJAX, ça en JavaScript et ça en DHTML"

On voit que même pour les gens du milieu, les termes Ajax, JavaScript, DHTML ne sont pas forcement bien compris.

Qu'est-ce qu'Ajax ? 

Avant d'expliquer AJAX, revenons en 1995. A cette époque deux navigateurs se battaient entre eux : Netscape et Internet Explorer. Brendan Eich travaille sur un langage de script s'exécutant dans Netscape, il fut d'abord nommé mocha puis LiveScript et enfin JavaScript. Ce dernier nom n'est pas le fruit du hasard puisque la sortie de JavaScript coïncide avec la prise en charge de Java dans le navigateur. En 1996, Microsoft décide de créer son propre langage de script : JScript. Du fait de ces 2 langages "différents", JavaScript avait une mauvaise image, lorsque l'on voulait faire du JavaScript on était souvent obligé de faire 2 versions du script. Fin 1996, Microsoft soumet JScript à l'ECMA, en 1997 un standard est né : ECMAScript qui a deux implémentations JScript et JavaScript.

Fin des années 90, JavaScript/JScript est capable de manipuler le DOM de la page HTML. Le DOM (Document Object Model) est un standard qui permet de naviguer au sein d'un document HTML/XML, c'est à dire que l'on peut désormais modifier les propriétés d'un élément HTML, rajouter des noeuds ou encore en supprimer. L'utilisation du DOM avec JavaScript a donnée un nouveau souffle à JavaScript. Puisque celui-ci avait une mauvaise image on préférait alors dire que l'on faisait du DHTML (Dynamic HTML) plutôt que du JavaScript + DOM. Bien que les problèmes de compatibilités étaient réduis, l'implémentation du DOM et de JavaScript était différente entre les navigateurs, JavaScript n'était alors toujours pas perçu comme un langage idéal. 

Mars 99, Microsoft sort Internet Explorer 5.0 avec un nouvel activeX permettant de faire des requêtes HTTP, JavaScript peut donc faire des requêtes, cette action n'est plus réservé au navigateur. Cette technologie à été utilisé par Microsoft pour Outlook Web Access afin de ne pas recharger toute la page pour récupérer les derniers messages.

Mozilla a implémenté cet API sous la forme d'un objet nommé XMLHttpRequest en 2002, depuis tous les navigateurs supportent cet objet y compris Internet Explorer à partir de la version 7. Le W3C est en train de travailler sur la spécification de cet objet depuis le 5 avril 2006 (W3C : The XMLHttpRequest Object). Pour l'instant l'objet XMLHttpRequest n'est pas standardisé.

L'utilisation de cet objet avec JavaScript a ainsi donné naissance à AJAX (Asynchronous Javascript And XML), terme utilisé pour la première fois en 2005. Ajax n'est pas une technologie ! C'est simplement un concept qui utilise JavaScript ainsi que l'objet XMLHttpRequest, disponible depuis 2002.

Ajax permet de faire des applications web plus interactifs et plus rapides, plus besoin de recharger toute la page pour avoir de nouvelles informations. La première utilisation de AJAX supportant plusieurs navigateurs vient de google grâce à google suggest

Fin 2005, on se rend compte que JavaScript permet de faire pas mal de chose côté client, notamment grâce au DOM, mais il a encore mauvaise réputation. Petit à petit, le terme AJAX évolue pour devenir un concept qui utilise du JavaScript, DOM, et l'objet XMLHttpRequest. Ajax n'ayant pas la mauvaise réputation du JavaScript, les marketeux ont donc remplacé JavaScript par Ajax.

Le principal concept d'Ajax c'est l'utilisation des technologies clients : JavaScript, DOM, CSS, ces technologies sont disponibles depuis 2002, alors que le terme AJAX est apparu en 2005, autrement dit : AJAX n'est qu'un concept nouveau qui utilise des vieilles technos.

Comment faire de l'ajax

Comme on l'a vu Ajax, est un nouveau concept qui désigne l'utilisation de technologie ayant mauvaises réputations (JavaScript, DHTML). Cette mauvaise réputation ne s'est pas faite par hasard, en effet JavaScript est un langage incompris. Il existe de nombreux frameworks qui permettent de simplifier la vie du développeur : prototype & script.acul.us, dojo toolkit, Yahoo! UI Library, jquery, google web toolkitMicrosoft AJAX Library ... grâce à ces frameworks vous pouvez manipuler le DOM encore plus facilement, interagir avec lui en très peu de ligne et faire des requêtes XMLHttpRequest beaucoup plus facilement.

et ASP.net Ajax dans tout ca ?

Et oui ! Je vous en parle tous les jours, où se positionne ASP.net Ajax dans tout ca ? ASP.net Ajax est en fait un framework serveur composé du framework client Microsoft Ajax Library et d'une partie serveur. La partie serveur contient de nombreux contrôles qui vont générer le JavaScript. Ce framework permet de faire de l'Ajax sans toucher une seule ligne de JavaScript.

Posted: lundi 9 juillet 2007 10:36 par cyril
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :

Commentaires

Pas de commentaires

Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- [TFS] Supprimer un projet de Visual Studio Online par Blog de Jérémy Jeanson le il y a 3 heures et 21 minutes

- Nouveau blog en anglais / New blog in english ! par Le blog de Patrick [MVP SharePoint] le 09-18-2014, 18:42

- [ #Yammer ] From Mailbox to Yammer and back / De votre messagerie vers Yammer et retour ! par Le blog de Patrick [MVP SharePoint] le 09-15-2014, 11:31

- [ #Office 365 ] New service settings panel / Nouveau panneau de paramétrage des services par Le blog de Patrick [MVP SharePoint] le 09-11-2014, 08:50

- Problème de déploiement pour une démo SharePoint/TFS? par Blog de Jérémy Jeanson le 09-10-2014, 21:52

- [ #Office365 ] Delve first impressions / Premières impressions sur Delve par Le blog de Patrick [MVP SharePoint] le 09-09-2014, 16:57

- [ #Office365 ] How to change Administration console language ? / Comment changer la langue de la console d’administration ? par Le blog de Patrick [MVP SharePoint] le 09-09-2014, 08:25

- [ #SharePoint 2013 ] Suppression de bases de données en état “Pas de Réponse” par Le blog de Patrick [MVP SharePoint] le 09-04-2014, 14:10

- Changer l’adresse d’une ferme Office Web Apps associée à SharePoint par Blog de Jérémy Jeanson le 09-01-2014, 22:21

- Une ferme #SharePoint 2013 dans @Azure en quelques clics (1ère partie) ! par Le blog de Patrick [MVP SharePoint] le 08-28-2014, 18:52