$30 off During Our Annual Pro Sale. View Details »

Rails 3 au Djangocong

Rails 3 au Djangocong

Jérémy Lecour

April 25, 2010
Tweet

More Decks by Jérémy Lecour

Other Decks in Technology

Transcript

  1. Bonjour

    View Slide

  2. Rails 3

    View Slide

  3. Rack à tous les étages
    • Merci WSGI

    View Slide

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

    View Slide

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

    View Slide

  6. Rack à tous les étages
    • brancher son appli principale sur le serveur
    web

    View Slide

  7. MVC-REST-Ressources
    • Une application rigoureuse des principes et
    du vocabulaire MVC

    View Slide

  8. 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é

    View Slide

  9. 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, …)

    View Slide

  10. MVC-REST-Ressources
    • Le Routage est totalement orienté
    Ressources
    • La table de routage est limpide

    View Slide

  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.

    View Slide

  12. Don’t Repeat Yourself
    • On évite de coder, définir, … quelque
    choses plusieurs fois
    • implémentations plus simples, plus faciles à
    maintenir, à tester, …

    View Slide

  13. 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

    View Slide

  14. Agnostique
    • ORM, JS, templates, tests, …
    • Railtie fait la glue autour de tout ça

    View Slide

  15. Interface /
    implémentations
    • Interfaces unifiées stable
    • Une implémentation activée par défaut
    • exemple : ActiveModel et ActiveRecord

    View Slide

  16. Autres pépites
    • bundler : dépendances
    • multi-environnements, extensibles
    • console (basée sur IRB)
    • …

    View Slide

  17. /me
    • jeremy.wordpress.com
    • @jlecour
    • github.com/jlecour

    View Slide

  18. 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/

    View Slide