Une liste de librairies Javascript pour développer en Ajax
Publié le 08 mai 07 à 07:28 | Catégorie : Développement Web | 18 commentaires
L’ensemble de technologies Ajax (pour Asynchronous JavaScript And XML) fait partie intégrante du développement de sites web 2.0. Ce type de sites plus riches et plus dynamiques nécessite un investissement plus important au niveau de la partie cliente d’une application web (HTML, CSS et Javascript) afin de proposer la meilleure expérience possible à l’utilisateur.
Cette partie ne concerne donc plus seulement la présentation et intègre maintenant une logique applicative plus complexe. Elle est donc devenue très importante et plus coûteuse à développer. Heureusement, il est possible de compter sur des librairies pour nous aider dans cette tâche.
La plupart du temps ces librairies Javascript offrent bien d’autres fonctionnalités. Il s’agit vraiment de frameworks sur lesquels il est possible de s’appuyer pour développer toute la partie présentation d’un site Internet. Chaque librairie à sa propre histoire et sa propre philosophie (développée par exemple pour supporter une plate-forme particulière ou implémentée en suivant les concepts de la programmation orientée objet). Cette liste n’a pas pour but de dresser un tableau exhaustif mais plutôt de vous donner un aperçu des possibilités qui s’offrent à vous :
-
Prototype : ce framework Javascript est utilisable tel quel, mais il sert également de base pour des librairies plus évoluées et plus lourdes comme Rico et Script.aculo.us (à voir ci-dessous). Il n’inclut donc pas d’effets visuels, mais comporte tout le nécessaire pour effectuer des requêtes en Ajax :
-
Rico : A l’inverse de Prototype, Rico propose donc en plus du support Ajax la possibilité de fabriquer des animations ou d’effectuer des glissers-déposers (ou drags and drops en anglais) comme dans un logiciel classique. Malheureusement, sa documentation semble un peu succincte :
-
Script.aculo.us : sûrement un des plus connus (probablement à cause de son intégration à Ruby on Rails). Il bénéficie d’une communauté par conséquent importante et dispose même d’un mécanisme d’extensions. Script.aculo.us est fournit de base avec l’auto-complétion en Ajax :
-
Mootools : une librairie compacte et modulaire qui a été conçu en suivant les principes de la programmation orientée objet. Sa syntaxe est très agréable et de nombreuses extensions viennent compléter les fonctionnalités de base. Le module Ajax est capable de gérer le format Json :
-
Dojo Toolkit : certainement une des librairies les plus complètes qui soient. Dojo Toolkit est supportée par une fondation qui regroupe des entreprises comme IBM ou encore Sun Microsystems. Elle repose sur un système de widgets et le package Ajax prend en compte différents types de transport comme les iframes :
-
jQuery : JQuery est une librairie Javascript très prometteuse. Elle est légère, extensible et très simple à utiliser. La documentation est vraiment très complète, avec des tutoriaux abordant de manière thématique les différentes fonctionnalités. Idéal pour se lancer dans le développement Ajax :
-
MochiKit : apparemment, les développeurs Python devraient s’y retrouver plus facilement que les autres, car on retrouve dans cette librairie un peu la philosophie de ce langage. MochiKit dispose de tout le nécessaire pour implémenter des tâches asynchrones :
-
Yahoo! UI Library : Yahoo! a mis à disposition sa librairie Javascript sous une licence open source. Il est donc maintenant possible de concevoir des pages tout aussi riches et interactives que celles des nombreux portails de la société. Le support est bien évidemment exemplaire :
Il existe encore bien d’autres librairies Ajax, dont certaines dépendent d’un langage de programmation comme Google Web Toolkit (Java) ou Xajax (Php) ou bien d’un environnement propriétaire comme Aflax (Flash).
Il faut vraiment prendre le temps d’étudier en détails ces librairies afin de choisir celle qui correspond le mieux à ses besoins. Ce choix est important car il n’est pas facile ensuite de faire machine arrière et de migrer vers un autre framework.
A lire également
Vous pouvez continuer votre lecture sur des sujets similaires en consultant les articles suivants :
- Pull-In, petit retour d'expérience avec Magento
- Zend Framework, un framework pour développer des applications Php robustes
- Problème d'entêtes HTTP qui disparaissent ? Jetez donc un oeil à votre firewall
- Comment optimiser un site en plusieurs langues pour les moteurs de recherche ?
Les visiteurs qui ont vu cette page ont consulté ensuite :
- 45 applications web 2.0 françaises (498 lectures)
- 12 logiciels gratuits à télécharger pour le développeur web (378 lectures)
- Une liste pour ne rien oublier (151 lectures)
A savoir
La rédaction de cet article a nécessité 2 heures et 52 minutes. Si vous le souhaitez, vous pouvez être prévenu de la parution de nouveaux articles en vous abonnant par RSS ou par email.
2 rétroliens à propos de “Une liste de librairies Javascript pour développer en Ajax” :
-
Tilàcica » Uploadify, plugin d’upload pour jQuery
Le 20 avril 2009 à 09:08 -
Toile-filante » La toile en vrac – episode 12
Le 24 juillet 2009 à 15:37
16 commentaires à propos de “Une liste de librairies Javascript pour développer en Ajax” :
Voila un article qui vaut 10/10
verone le 8 mai 2007 à 09:06 (#1)
Devant la multiplicité des frameworks Javascript/Ajax, Sun tente de promouvoir sa solution unifiée jMaki. jMaki est un framework unifié qui masque l’accès aux principales librairies javascript (selon sun) : dojo, yahoo UI, scriptaculous, google, spry grâce à un “Widget Model”. Fonctionne a priori (je n’ai pas testé) pour un dév serveur en php ou java.
https://ajax.dev.java.net/about.html
On peut également citer Google Web Toolkit, qui est assez original par son modèle de développement : programmez en Java, le GWT génère le javascript pour vous ! Pratique pour bénéficier des environnements de développement Java, et surtout pour éviter d’avoir à maîtriser le Javascript (une connaissance rudimentaire ne suffit souvent pas pour faire des développements Ajax). GWT masque également les différences de comportement sur les principaux browsers, et permet d’automatiser les tests unitaires.
Attention pour les applications qui ont vocation à intégrer des portails : l’intégration de plusieurs applications (développées avec des librairies js différentes) dans une même page web peut poser des problèmes selon l’ordre de chargement de ces libs.
Enfin, pour avoir un peu regardé le sujet il y a quelques mois, Prototype semble être la librairie la plus déployée (grâce à sa simplicité ? ), ce qui confère à Scriptaculous (qui s’appuie sur Prototype) des chances non négligeables de leadership. En revanche, son poids peut être un inconviénent pour du site web…
Yann le 8 mai 2007 à 09:47 (#2)
Aux poids lourd, on peut ajouter le framework d’Adobe. Spry est sensé apporter une alternantive AJAX à Flex.
http://labs.adobe.com/technologies/spry/
Grom le 8 mai 2007 à 10:25 (#3)
Aile, aile, aile, tu as osé prononcer le nom interdit, “web 2.0″, j’entends déjà broncher certains ;-D
Excellent article, comme toujours :-).
Il ait vraie que passer d’une libraire à une autre, après avoir commencé à développé est vraiment compliqué, j’ai voulu essayer d’utiliser la lib de Mootools par-dessus Script.aculo.us, impossible !!!
aucune compatibilité !
Sauf erreur de ma part, c’est Prototype qui la bloque et sans cette lib, Script.aculo.us n’est pas utilisable ! Vraiment de la m***de tout ça
Je confirme ce que dit Stéphane, réfléchissez bien sûr quelle lib Ajax vous allez consacrer votre projet, avant de commencer à développer votre site web 2.0 (aile, aile, aile ;-)) !
Je préconise Mootools, plus légère et plus fluide.
En parlant d’Ajax, je recommande http://www.miniajax.com/ pour ceux qui ne connaissent pas. Vous y trouverez plein de script très intéressants.
Badoux C le 8 mai 2007 à 10:54 (#4)
Etant donné l’utilisation de $ de prototype pour getElementById par ex, il est tout à fait normal que les librairies ne soient pas compatibles entre elles. De toute manière, pour un soucis de poid, il n’ya pas d’intéret à en utiliser plusieurs (sauf cas prototype, scriptaculous bien sur).
Pour ma part j’utilise prototype, scriptaculous. Depuis que la doc prototype existe, celà facilité les choses. J’avais fait un test de jquery qui semble une superbe alternative, sinon mootools 1.1 est sorti cette semaine, et au vue des exemples d’utilisation, elle semble devenir bien intéressante.
Et pour ceux qui n’ont pas besoin d’une usine à gaz mais juste le minimum (quelques effets, et requètes ajax). Je vous conseille http://simplejs.bleebot.com/ (en plus c’est français, enfin belge!!si je ne me trompe).
eMeRiKa le 8 mai 2007 à 12:05 (#5)
Et dire que je guettais cette nouvelle version de Mootools depuis un mois ! Heureusement que tu passais pas là eMeRiKa !
Stéphane le 8 mai 2007 à 12:26 (#6)
Merci le flux RSS de leur blog!!
Rha comment on faisait sans RSS et Netvibes avant!! (mais j’attend toujours un gestionnaire de bookmark français, performant!! firefox n’étant pas du tout suffisant)
eMeRiKa le 8 mai 2007 à 15:41 (#7)
Merci pour tous ces liens. J’ai encore du mal à y avoir clair mais je suis sur la bonne piste. J’ai un peu du mal à différencier Toolkit / Framework / library… à moins que tous soient la même chose au final ? :p En tous cas article de qualité comme d’hab !
Al le 8 mai 2007 à 22:40 (#8)
Cool pour mootools 1.1
par contre apparement pas de swiff
va falloir encore attendre …
Isilgawen le 9 mai 2007 à 08:07 (#9)
Pour ce qui est des conflit entre utilisations de $ par les différentes librairies, jQuery propose une solution : http://www.jquery.com/Using_jQ....._Libraries
Sinon, pour compléter un peu le sujet, je me permets de signaler une petite étude que nous avions faite il y a quelques mois : http://www.clever-age.com/veil.....-ajax.html
Nicolas Hoizey le 9 mai 2007 à 08:59 (#10)
Allez également voir du côté des modules offerts par
http://www.extjs.com (qui s’appuie sur prototype, scriptaculous et jquery)
Une démo est consultable ici :
http://extjs.com/deploy/ext/docs/index.html
C’est assez impressionnant.
Pierre Guillen le 9 mai 2007 à 09:54 (#11)
Vraiment exceptionnel ce EXTJS.com, j’adopte, si tu me confirme (Pierre Guillen) qu’il est compatible avec les plus grands browser, type: IE5,6,7 Mozilla FireFox, Maxthon, Opera, etc… !?
En plus je suis vraiment tombé amoureux du design.
Merci à toi pour ce lien !!!
Badoux C le 9 mai 2007 à 12:56 (#12)
Badoux C,
Extjs est annoncée compatible Internet Explorer 6+, FireFox 1.5+ (PC, Mac, *nix), Safari 2+ et Opera 9+.
Pierre Guillen le 11 mai 2007 à 07:45 (#13)
Un très bonne article, avec d’exelente référence de lib !
Je viens d’ailleur compléter cette liste avec une Lib qui mérite une plus grande notoriété mais malgrès tout peu connu du monde des developpeurs web …
Il s’agit de Nitobi !
http://www.nitobi.com/
C’est une exelente lib que je vous invite a consulter et pourquoi pas a utiliser !
Thibow le 9 janvier 2009 à 17:28 (#14)
Bel article, mais pour les personnes qui croient que les librairies ne sont pas compatible ensemble se trompe bien.
Jquery est capable d’être intégrer avec d’autre librairie sans aucun probléme.
La documentation est la pour les détails.
gtraxx le 7 février 2009 à 13:39 (#15)
Salut ,juste pour dire qu’il y a l’excellent EXTJS a ne pas ignorer.
Evan-XG le 23 juillet 2009 à 18:48 (#16)
Ajouter un commentaire