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
Perfect Ruby on Rails v2
Search
sugamasao
July 25, 2020
Technology
0
20k
Perfect Ruby on Rails v2
パーフェクトRuby on Rails【増補改訂版】が発売したので少し裏話をお伝えします
sugamasao
July 25, 2020
Tweet
Share
More Decks by sugamasao
See All by sugamasao
マルチプロダクト環境におけるSREの役割 / SRE NEXT 2025 lunch session
sugamasao
1
2k
EMConf JP 2025 懇親会LT / EMConf JP 2025 social gathering
sugamasao
2
790
マルチプロダクトな開発組織で 「開発生産性」に向き合うために試みたこと / Improving Multi-Product Dev Productivity
sugamasao
1
750
開発生産性、上から見るか 下から見るか / development productivity and cognitive science
sugamasao
12
12k
開発の安定性・スループットを定量的に見る #とは / Quantitative view of development
sugamasao
1
1.2k
SaaS.tech #1 / SmartHR
sugamasao
2
6.9k
Ruby history of my life
sugamasao
2
11k
Ruby on Rails 6.0 New Feature
sugamasao
1
12k
Rubyを説明するのは難しい(仮) / ruby is difficult
sugamasao
5
9.6k
Other Decks in Technology
See All in Technology
君はジョシュアツリーを知っているか?名前をつけて事象を正しく認識しよう / Do you know Joshua Tree?
ykanoh
2
110
AWS Systems Managerのハイブリッドアクティベーションを使用したガバメントクラウド環境の統合管理
toru_kubota
0
130
FastMCP OAuth Proxy with Cognito
hironobuiga
3
120
Phase03_ドキュメント管理
overflowinc
0
1.6k
GitHub Copilot CLI で Azure Portal to Bicep
tsubakimoto_s
0
170
DDD×仕様駆動で回す高品質開発のプロセス設計
littlehands
4
1.9k
スピンアウト講座03_CLAUDE-MDとSKILL-MD
overflowinc
0
780
詳解 強化学習 / In-depth Guide to Reinforcement Learning
prinlab
0
360
AIエージェント×GitHubで実現するQAナレッジの資産化と業務活用 / QA Knowledge as Assets with AI Agents & GitHub
tknw_hitsuji
0
160
スピンアウト講座01_GitHub管理
overflowinc
0
850
A Casual Introduction to RISC-V
omasanori
0
540
Laravelで学ぶOAuthとOpenID Connectの基礎と実装
kyoshidaxx
4
1.7k
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
28
2.5k
The untapped power of vector embeddings
frankvandijk
2
1.6k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
64
52k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
1.9k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
300
Technical Leadership for Architectural Decision Making
baasie
3
300
YesSQL, Process and Tooling at Scale
rocio
174
15k
It's Worth the Effort
3n
188
29k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
150
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
120
So, you think you're a good person
axbom
PRO
2
2k
Transcript
ൃചͰ͖ͯΑ͔ͬͨ Kaigi on Rails new(2020/7/25) sugamasao
[email protected]
ͩΕʁ HN:sugamasao PN:͕͢ΘΒ ·͞ͷΓ Rubyྺ : 14͘Β͍ Railsྺ : 10͘Β͍
• WebΞϓϦέʔγϣϯϓϩάϥϚʔ • Rubyʹؔ͢Δॻ੶ͷࣥච׆ಈ
ࣥචྺ 2013 2019 2014 2018 2017 2020
ࣥචྺ 2013 2019 2014 2018 2017 2020 ࠓͷ
͓Αͦ6ӽ͠ʹ ύʔϑΣΫτRuby on Railsͱ͍͏ॻ੶ ΛվగͰ͖ͨͱ͍͏ ͓Λ͠·͢
ΑΖ͘͠ ͓Ͷ͕͍͠·͢
ڞஶ ϝϯόʔ
୭1ਓ͚ܽͯ ग़൛·Ͱ౸ୡͰ ͖ͳ͔ͬͨ ʢͷͰɺຊʹײँ͔͠ͳ͍ʣ
౸ୡͰ͖ͳ͔ͬͨϩά ॳ൛࣌ͷίϛοτ
౸ୡͰ͖ͳ͔ͬͨϩά ҰॠͷΔؾ
౸ୡͰ͖ͳ͔ͬͨϩά ͍Α͍ΑຊʹΔ͔͠ͳ͘ͳͬͨ࣌
౸ୡͰ͖ͳ͔ͬͨϩά ͜͜ͰҰମͳʹ͕ىͬͨ͜ͷ͔? ͦͷṖΛղ͖໌͔͘͢զʑΞϚκϯͷԞͱ͔ͬͨ
2017/09ʙ2018/02 վగΛΓ࢝Ί͕͖ͨ(ry
2018/02ʙ2018/10 ແ෩
2018/02ʙ2018/10 ʢແ෩ͳঢ়ଶʹରͯ͠ʣ ୲ฤूऀࢯ ʮύʔϑΣΫτRuby on Railsͷ४උӡಈ ͱͯ͠1ϜοΫຊΛग़͠·͠ΐ͏͔ʂʯ ʮ͑ͬʯʮ͑ͬʯ
2018/11ʙ2019/10
2018/11ʙ2019/10 https://twitter.com/igaiga555/status/1186457440612544513 ग़ɺग़ʙωλόϨΣʙ
४උӡಈͯ͠·ͨ͠
ύRailsվగʹ๋͛ͨओͳ݄ 19ϲ݄͘Β͍ͬͯͨͬΆ͍
ύRailsվగʹ๋͛ͨओͳ݄ @igaiga555͞Μ @_yasaichi͞Μ ͕ࢀըͯ͘͠Εͨ࣌ظ
ύRailsվగʹ๋͛ͨओͳ݄ @igaiga555͞Μ @_yasaichi͞Μ ͕ࢀըͯ͘͠Εͨ࣌ظ Ͳ͏ݟͯஃͰ͢ɻຊʹ ͋Γ͕ͱ͏͍͟͝·ͨ͠ ʢຊʹʂʣ
ͦΜͳײ͡ͰͰ͖ͨͷ͕ ύʔϑΣΫτRuby on Railsʲ૿ิվగ൛ʳ Ͱ͢
Part1ɹRails ʙ overview 1ষɹRuby on Railsͷ֓ཁ 2ষɹRuby on RailsͱMVC 3ষɹԡ͓͖͍͑ͯͨ͞Railsͷجຊػೳ
ͬ͘͟Γݟॴ • جຊతͳRailsͷ͍ํʹ͍ͭͯɺςΩετͷϒϥο γϡΞοϓղઆ༰ͷΞοϓσʔτ • 3ষͰओʹ `rails` ίϚϯυͰར༻Ͱ͖ΔίϚϯυ܈ ͔ΒݟΔػೳͷհʢྫ͑credentialsͳͲʣ
Part2ɹRailsͷपลࣝ 4ষɹϑϩϯτΤϯυͷ։ൃख๏ 5ষɹRailsඪ४ͷػೳΛ׆༻ͯ͠ૉૣ͘ػೳ࣮͢Δ ͬ͘͟Γݟॴ • 4ষͰWebpacker/Sprockets(CSS͚)ΈΜͳେ ͖stimulusͷղઆͳͲΛ͍ͯ͠ΔΑ • 5ষͰActiveStorageͳͲɺRails͕ఏڙ͍ͯ͠Δศ རίϯϙʔωϯτͷղઆΛ͍ͯ͠ΔΑ
Part3ɹWebΞϓϦέʔγϣϯ։ൃ 6ষɹRailsΞϓϦέʔγϣϯ։ൃ 7ষɹRailsΞϓϦέʔγϣϯͷςετ ͬ͘͟Γݟॴ • ॳ൛Ͱ࡞ͨ͠AwesomeEventsΛݱ༻ʹϦϝΠΫ͠ ͍ͯΔΑ • ςετminitestʹม͑·ͨ͠ •
ίʔυWeb্ʹ͋Γɺষ୯ҐͰλάͳͲଧͬͯ͋Δͱ͍ ͏ҒۀΛୡ͍ͯ͠·͢ • https://github.com/perfect-ruby-on-rails/awesome_events
Part4ɹRailsΞϓϦέʔγϣϯͷ֦ுɾӡ༻ 8ষɹRailsΞϓϦέʔγϣϯ֦ு 9ষɹίʔυ࣭Λ্͛Δ 10ষɹίϯςφΛར༻ͨ͠RailsΞϓϦέʔγϣϯͷӡ༻ ͬ͘͟Γݟॴ • CIgemͷΞοϓσʔτͳͲɺݱͷWebΞϓϦέʔγϣ ϯͰඞཁͳ׆ಈʹ͍ͭͯղઆ͍ͯ͠ΔΑ • ୯ʹRailsΛDockerͰಈ͔͢ɺͰͳ͘Ωϟογϡͷར༻ํ
๏ͳͲݱ࣮Λݟਾ͑ͨίϯςφӡ༻ํ๏ͳͲͷղઆΛͯ͠ ͍ΔΑ
Part5ɹΤΩεύʔτRails 11ষɹෳࡶͳυϝΠϯΛදݱ͢Δ 12ষɹෳࡶͳϢʔεέʔεΛ࣮ݱ͢Δ 13ষɹෳࡶͳσʔλૢ࡞Λ࣮͢Δ ͬ͘͟Γݟॴ • Ͳͷষʮී௨ʹRailsΛ։ൃ͍ͯ͠ΔͱΩπ͘ͳͬͯ͘ Δʯ࣌ͷͲͷΑ͏ʹίʔυΛղ͖΄͙͍ͯ͘͠ͱྑ͍͔ղ આ͍ͯ͠ΔΑ
ύRails/ύʔϑΣΫτRails ͳͲͱఴ͑ͯײΛπΠʔ τ͍͚ͯͨͩ͠Δͱஶऀ͕ͨͪتͼ·͢ʂ☺ ·ͨɺޡࣈࣈͳͲΛൃݟͨ͠ࡍgihyo͞Μͷα ϙʔτϖʔδ͔ɺஶऀͬΆ͍ਓʹڭ͑ͯΒ͑Δͱॿ ͔Γ·͢ ࠷ޙʹ