Bonjour
Rails 3
Rack à tous les étages


• Merci WSGI
Rack à tous les étages

• sessions
• cookies
• cache
• redirections (à la place d'Apache)
• tout se qui est avant le controlleur.
Rack à tous les étages


• incorporer des applications dans des
  applications
Rack à tous les étages


• brancher son appli principale sur le serveur
  web
MVC-REST-Ressources


• Une application rigoureuse des principes et
  du vocabulaire MVC
MVC-REST-Ressources
• Le Modele gère la couche métier : ORM,
  validations, callbacks, sérialisation, états,
  i18n, …
• Le Controlleur expose l'API de
  l'application et pilote les Vues.
• Les Vues fait le rendu des ressources
  appelées, dans le format demandé
MVC-REST-Ressources

• On appelle une ressource générique (liste)
  ou spécifique (par un ID)
• avec un verbe HTTP (CRUD)
• les données sont transmises dans une
  variété de formats (HTML, JSON, XML, …)
MVC-REST-Ressources


• Le Routage est totalement orienté
  Ressources
• La table de routage est limpide
configuration
          conventions

• Il y a le cas de 80-90% des usages, pour ça il
  n'y a rien à faire
• pour les autres, on configure.
Don’t Repeat Yourself

• On évite de coder, définir, … quelque
  choses plusieurs fois
• implémentations plus simples, plus faciles à
  maintenir, à tester, …
Interface avec la BDD

• pas de définition du schéma dans la config
• l'ORM le devine en regardant les tables
• par défaut les modèles sont vides : pas de
  getter/setter
Agnostique


• ORM, JS, templates, tests, …
• Railtie fait la glue autour de tout ça
Interface /
     implémentations

• Interfaces unifiées stable
• Une implémentation activée par défaut
• exemple : ActiveModel et ActiveRecord
Autres pépites

• bundler : dépendances
• multi-environnements, extensibles
• console (basée sur IRB)
•…
/me

• jeremy.wordpress.com
• @jlecour
• github.com/jlecour
•
2 points de départ

• 1 blog en 15 minutes avec Rails 3
 • www.railsdispatch.com
• Mon article pour commencer Ruby et Rails
 • http://jeremy.wordpress.com/2009/11/13/
    monter-dans-le-train-de-ruby-et-rails/

Rails 3 au Djangocong

  • 1.
  • 2.
  • 3.
    Rack à tousles étages • Merci WSGI
  • 4.
    Rack à tousles étages • sessions • cookies • cache • redirections (à la place d'Apache) • tout se qui est avant le controlleur.
  • 5.
    Rack à tousles étages • incorporer des applications dans des applications
  • 6.
    Rack à tousles étages • brancher son appli principale sur le serveur web
  • 7.
    MVC-REST-Ressources • Une applicationrigoureuse des principes et du vocabulaire MVC
  • 8.
    MVC-REST-Ressources • Le Modelegère la couche métier : ORM, validations, callbacks, sérialisation, états, i18n, … • Le Controlleur expose l'API de l'application et pilote les Vues. • Les Vues fait le rendu des ressources appelées, dans le format demandé
  • 9.
    MVC-REST-Ressources • On appelleune ressource générique (liste) ou spécifique (par un ID) • avec un verbe HTTP (CRUD) • les données sont transmises dans une variété de formats (HTML, JSON, XML, …)
  • 10.
    MVC-REST-Ressources • Le Routageest totalement orienté Ressources • La table de routage est limpide
  • 11.
    configuration conventions • Il y a le cas de 80-90% des usages, pour ça il n'y a rien à faire • pour les autres, on configure.
  • 12.
    Don’t Repeat Yourself •On évite de coder, définir, … quelque choses plusieurs fois • implémentations plus simples, plus faciles à maintenir, à tester, …
  • 13.
    Interface avec laBDD • pas de définition du schéma dans la config • l'ORM le devine en regardant les tables • par défaut les modèles sont vides : pas de getter/setter
  • 14.
    Agnostique • ORM, JS,templates, tests, … • Railtie fait la glue autour de tout ça
  • 15.
    Interface / implémentations • Interfaces unifiées stable • Une implémentation activée par défaut • exemple : ActiveModel et ActiveRecord
  • 16.
    Autres pépites • bundler: dépendances • multi-environnements, extensibles • console (basée sur IRB) •…
  • 17.
  • 18.
    2 points dedépart • 1 blog en 15 minutes avec Rails 3 • www.railsdispatch.com • Mon article pour commencer Ruby et Rails • http://jeremy.wordpress.com/2009/11/13/ monter-dans-le-train-de-ruby-et-rails/