Rails-widgets

Bonjour avez vous déjà utilisé les rails-widgets (http://
wiki.github.com/paolodona/rails-widgets)?

Qu’en pensez vous?

Nicolas

J’en pense que la majeure partie de ces choses là se font déjà très bien
avec en JavaScript non-intrusif avec jQuery, et que c’est mieux de les
faire
comme ça sur la base du “dès que tu vas devoir faire quelque chose de
subtilement différente, les widgets seront moins souples”. A ça je
préfèrerai des plugins jQuery réutilisables, ça tombe bien il y en a
plein
qui font des menus à onglets, des show / hide (et avec de l’Ajax pour
éviter
de blinder tes listes avec plein d’infos inutiles à chaque envoi), etc.

A mon humble avis, que je partage, l’idée d’écrire le javascript avec du
rails côté serveur est une fausse bonne idée notoire, ça implique un
couplage rails-javascript tendu, ça fait que l’application ne dégrade
pas
bien en l’absence de JavaScript (pensez à l’embarqué, aux iphones, etc.)
et
ça pollue le code HTML qui n’a déjà pas besoin de ça pour gagner en
complications. En plus, ça fait que lorsque vous tentez une vrai
acrobatie
JavaScript, vous avez déjà plein de câbles tendus dans vos pattes, et
que
vous êtes moins préparé puisque rails vous a maintenu dans l’illusion
qu’il
pouvait tout faire tout seul.

La bonne solution c’est de faire une appli qui fonctionne bien sans
JavaScript, et de rajouter le JavaScript sous forme de fichiers .js avec
un
bon framework bâti sur l’idée de non-intrusion (j’ai déjà parlé de
jQuery
?).

Voilà , c’était mes 2 centimes d’euros.

Michel B.

2009/7/27 Tranquiliste [email protected]

Merci Michel,

OUI tu as déjà parlé de JQuery :wink: C’est vrai que cette librairie me
semble très bien par toutes les UI qu’elle offre mais je n’ai pas
encore sauté le pas de la suppression de prototype et sriptaculous
(bien que j’ai très peu de javascript/ajax dans mon code).
Mais maintenant que mon appli marche je souhaite rajouter quelques
amélioration de présentation avec du javascript, donc j’étudie tout ce
qui existe.

On 27 juil, 09:56, Michel B. [email protected]

Qui a parlé de supprimer Prototype / Scriptaculous ? On peut très bien
faire
cohabiter jQuery avec. Simplement je pense que les widgets présentés
dans
leur présentation seront plus pénibles dès que tu auras à sortir des
clous,
et pour un gain minime par rapport à jQuery en temps de développement
d’interface. Si tu n’as pas à sortir des clous, les widgets peuvent être
très bien, du moment que ça marche pour toi, et d’autant mieux si tu
n’as
personne de compétent en JavaScript sous la main.

Michel B.

2009/7/27 Tranquiliste [email protected]

Cohabiter? Je croyais que ce n’était pas recommandé et en plus cela
fait des ko en plus à charger (même s’ils sont cachés).

Ca m’intéresse de savoir si vous êtes beaucoup à utiliser les 2 en
même temps?

Tranquiliste a écrit :

Cohabiter? Je croyais que ce n’était pas recommandé et en plus cela
fait des ko en plus à charger (même s’ils sont cachés).

Ca m’intéresse de savoir si vous êtes beaucoup à utiliser les 2 en
même temps?

J’utilise jQuery en plus de prototype seulement pour des parties admin,
pour profiter de wymeditor.
Même s’il n’y a pas d’incompatibilité avec le mode “noConflict” de
jQuery, c’est une mauvaise idée d’utiliser les 2 en même temps vu la
lardeur que cela engendre.

Donc, pour le front-end en tous cas, mieux vaut bien déterminer ce dont
on a besoin quitte à choisir sa lib en fonction des plugins et autres
widgets qui existent pour elle.
De toutes façons entre mootools, prototype et jQuery on met très peu de
temps à s’adapter une fois que l’on a compris la philosophie derrière.

On peut très bien utiliser les deux en même temps, jQuery fournit 3
méthodes
canon pour le faire sans effet de bord :
http://docs.jquery.com/Using_jQuery_with_Other_Libraries

On peut même le faire sans se passer de la méthode $() ni perturber
celle de
prototype.

Au pire, il se peut que tu attribues des réponses concurrentes aux
évènements mais ça peut aussi se produire en utilisant simplement
prototype
/ scriptaculous sans faire attention. Ceci dit, il peut être déjà mieux
d’utiliser les drag-and-drop de jQuery, parce qu’ils n’ont pas le défaut
des
droppables de prototype qui fait que lorsqu’on retire un élément
droppable
du document sans penser à faire Droppable.remove() on se retrouve avec
tous
les draggables inutilisables…

Michel B.

2009/7/27 Tranquiliste [email protected]