Depuis que la vague « Ajax » est passée sur le web, il y eut moultes framework JavaScript pour gérer nous seulement les requêtes avec le serveur, mais aussi l’utilisation du DOM. Il faut bien séparer les deux puisqu’une certaine confusion règne, en tout cas pour les moins techniciens.
L’AJAX est le garagiste pour votre voiture : on change ce dont on a besoin et on repart avec une voiture qui roule correctement. Grâce à AJAX, on peut communiquer avec le serveur sans chargement de la page : la communication est asynchrone.
D’autre part, les techniciens du web on redécouvert qu’il était possible de jouer du JavaScript, on appelait ça du « DHTML » à l’époque. Et d’ailleurs, ça en est toujours, sauf qu’à l’heure actuelle, on a tendance à l’amalgamer avec AJAX.
Prototype JS a pour but de simplifier aux maximum tant la communication AJAX avec le serveur, que l’utilisation du DOM. Et son grand avantage, c’est qu’il ne fait que ça … Simple, efficace, performant.
J’utilise Prototype dans mes propres développement depuis plus de 2 ans maintenant, autant dire que je commence à bien le maîtriser. Croyez-moi, ses capacitiés sont illimitées grâce, justement à la volonté de ses concepteurs de ne pas en faire de trop.
Il est possible de créer des classes JavaScript de la façon suivante :
var maClasse= Class.create(uneClasseParente, { initialize: function(parametre1, options) { this.parametre1 = parametre1; this.options = Object.extend({ 'option1' : 'valeur 1', 'option2' : 'valeur 2' }); } }); |
Ici, nous construisons une classe « maClasse », qui hérite de « uneClasseParente ». Le constructeur « initialize » est appelé automatiquement lors de la création de l’instance de cette classe. Le constructeur a deux paramêtres : parametre1 (requis) et options (optionnel). En effet, grâce à l’ »Object.extend », il est possible de rendre des paramêtres optionnels avec des valeurs par défaut. Ceci donne à JavaScript une véritable puissance toute en souplesse.
Si vous voulez vous amuser avec du JavaScript pour améliorer l’ergonomie de votre site avec des animations, listes ordonnées, drag & drop, etc., utilisez Script.aculo.us : il complète à merveille Prototype pour la partie animation et DHTML.
La bonne utilisation de ces frameworks peut être poussée très loin jusqu’à détourner le site web en une application évoluée, le tout n’importe où et sans limite. Ce principe devrait en intéresser plus d’un
Mots-clefs : Ajax, Javascript, Prototype, Scriptaculous


Hey, j’avais pas vu tous ces nouveaux posts !
Tu as déjà essayé jQuery ? Je n’utilise plus que ça pour le JS, simplicité, rapidité (voir le test slickspeed), bref je m’en passe plus
J’hésite à y passer encore … Y a-t-il une vraie bonne documentation ? Des exemples ? Peut-on créer de vrais objets ?
J’utilise très peu la partie objet étant plus sur le front et l’animation (tu peux trouver tous les détails ici : http://jqueryui.com/)
Niveau documentation il y a ce qu’il faut, une bonne communauté derrière et pour te convaincre on peut observer pas mal de grosses figures passer progressivement à jQuery. Après c’est une question de goût, mais ça vaut le coup de tester pour comparer, c’est toi le plus à même de savoir ce qui te convient le mieux
http://www.jquery.com/
Personnelement j’utilise mootools et jquery.
Les 2 sont bien documentés et comme tu le dit plus haut les possibilités avec chacun sont illimités.
Seul bémol j’aurais aimer qu’au moins un des deux possède une documentation disponible en français.
Je sais que Prototype est assez lent mais lorsqu’il s’agit de créer une application en JS, il montre toute sa puissance.
Je pense que jQuery et Mootools sont appropriés pour faire du « joli » et jouer avec les effets. Lorsqu’il s’agit de créer de vraies classes en POO, Prototype est parfait !