Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Rails 3 au Djangocong
Search
Jérémy Lecour
April 25, 2010
Technology
92
0
Share
Rails 3 au Djangocong
Jérémy Lecour
April 25, 2010
More Decks by Jérémy Lecour
See All by Jérémy Lecour
Accélération web avec HAProxy et Varnish
jlecour
0
290
HAProxyConf 2022 – Boost your web-app with HAProxy and Varnish
jlecour
0
150
Let's Encrypt, le trublion du HTTPS
jlecour
0
230
La Suite ELK au service des développeurs et de la production
jlecour
0
890
Après 883 indices quotidiens, ça cherche encore et trouve sans cesse
jlecour
1
220
Test Driven (web) Configuration
jlecour
0
180
Elasticsearch - c'est plus que ça en a l'air
jlecour
0
700
Interacting with 3rd party services
jlecour
0
110
Processus et démons sous Unix/Linux
jlecour
0
120
Other Decks in Technology
See All in Technology
プロンプトエンジニアリングを超えて:自由と統制のあいだでつくる Platform × Context Engineering
yuriemori
0
130
建設的な現実逃避のしかた / How to practice constructive escapism
pauli
4
300
Webアクセシビリティは“もしも”に備える設計
tomokusaba
0
170
試されDATA SAPPORO [LT]Claude Codeで「ゆっくりデータ分析」
ishikawa_satoru
0
340
Babylon.js を使って試した色々な内容 / Various things I tried using Babylon.js / Babylon.js 勉強会 vol.5
you
PRO
0
270
ストライクウィッチーズ2期6話のエイラの行動が許せないのでPjMの観点から何をすべきだったのかを考える
ichimichi
1
310
NgRx SignalStore: The Power of Extensibility
rainerhahnekamp
0
170
生成AI時代のエンジニア育成 変わる時代と変わらないコト
starfish719
0
380
AIドリブン開発の実践知 ― AI-DLC Unicorn Gym実施から見えた可能性と課題
mixi_engineers
PRO
0
120
🀄️ on swiftc
giginet
PRO
0
280
AI時代に新卒採用、はじめました/junior-engineer-never-die
dmnlk
0
230
AgentCore RuntimeからS3 Filesをマウントしてみる
har1101
3
390
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
Thoughts on Productivity
jonyablonski
76
5.1k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
68
38k
Skip the Path - Find Your Career Trail
mkilby
1
100
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
370
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
500
The Cost Of JavaScript in 2023
addyosmani
55
9.8k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
260
GitHub's CSS Performance
jonrohan
1032
470k
How to build a perfect <img>
jonoalderson
1
5.4k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.3k
Transcript
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/