Bonsoir et merci de poser la question.

Donc pourquoi faut-il progressivement abandonner le RJS ? Voici ma
longue (mais détaillée) réponse...

Il faut déjà bien comprendre ce que c'est le RJS. C'est en gros faire
une requête au serveur, et le serveur va répondre un bloc de JS généré
dynamiquement, avec des morceaux de vues à l'intérieur. Le client
reçoit ce gros morceau moche mélangeant HTML et JS et l'évalue.

En fait, tout est une question de bonnes conventions. Il y a 10 ans,
cela ne posait pas de problème de mélanger les styles dans le code
HTML.

Aujourd'hui c'est devenu un standard de séparer l'HTML des styles avec
des CSS...

Progressivement, il en va de même pour le code côté client : les bons
développeurs Web ne mélangent plus le JS dans l'HTML, cela s'appelle
l'Unobtrusive JavaScript.
Fini les onclick="bidule", etc. Désormais, le code côté client est
scripté à part avec un framework Javascript type jQuery qui va binder
des événements sur les différents éléments de vues.

Le gros phénomène actuel est que progressivement la logique se déplace
du côté client. Avec l'augmentation des performances des interpréteurs
JavaScript, les interfaces mobiles, les interfaces HTML offline, les
vues deviennent de plus en plus complexes.

Des frameworks comme Sproutcore d'Apple ou Cappuccino déplacent
totalement la logique côté client et proposent des ensembles de
composants JavaScript indépendants. Ces composants communiquent
uniquement avec le serveur avec des appels JSON. En gros le serveur ne
fournit plus de vue après l'envoi de l'application initiale, il ne
fournit qu'une API qui va répondre au client avec du JSON.

Donc ça c'était pour la tendance actuelle... En gros pour résumer,
actuellement une bonne manière de faire est de scripter des composants
d'interfaces indépendants et donc potentiellement réutilisables en
utilisant un framework JS (bas niveau : jQuery, plus haut niveau par
exemple Backbone.js). Et s'il doit y avoir communication entre les
composants et le serveur, cela se fait via des appels REST avec un
retour en JSON.

-- 
Nicolas Blanco, Web developper

http://www.nicolasblanco.fr
Jabber/GoogleTalk : [email protected]
Twitter : http://twitter.com/slainer68
Github : http://github.com/slainer68
Skype : slainer68

-- 
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de 
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse 
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse 
[email protected]

Répondre à