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
1.1k
EMConf JP 2025 懇親会LT / EMConf JP 2025 social gathering
sugamasao
2
590
マルチプロダクトな開発組織で 「開発生産性」に向き合うために試みたこと / Improving Multi-Product Dev Productivity
sugamasao
1
720
開発生産性、上から見るか 下から見るか / development productivity and cognitive science
sugamasao
12
9.2k
開発の安定性・スループットを定量的に見る #とは / Quantitative view of development
sugamasao
1
1.1k
SaaS.tech #1 / SmartHR
sugamasao
2
6.3k
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.5k
Other Decks in Technology
See All in Technology
全員が手を動かす組織へ - 生成AIが変えるTVerの開発現場 / everyone-codes-genai-transforms-tver-development
tohae
0
110
Tableau API連携の罠!?脱スプシを夢見たはずが、逆に依存を深めた話
cuebic9bic
3
220
Bet "Bet AI" - Accelerating Our AI Journey #BetAIDay
layerx
PRO
4
1.7k
Claude Codeが働くAI中心の業務システム構築の挑戦―AIエージェント中心の働き方を目指して
os1ma
9
2.5k
AWS re:Inforce 2025 re:Cap Update Pickup & AWS Control Tower の運用における考慮ポイント
htan
1
230
VLMサービスを用いた請求書データ化検証 / SaaSxML_Session_1
sansan_randd
0
240
【CEDEC2025】現場を理解して実現!ゲーム開発を効率化するWebサービスの開発と、利用促進のための継続的な改善
cygames
PRO
0
780
dipにおけるSRE変革の軌跡
dip_tech
PRO
1
250
マルチプロダクト×マルチテナントを支えるモジュラモノリスを中心としたアソビューのアーキテクチャ
disc99
1
420
✨敗北解法コレクション✨〜Expertだった頃に足りなかった知識と技術〜
nanachi
1
670
人に寄り添うAIエージェントとアーキテクチャ #BetAIDay
layerx
PRO
9
2.1k
Intro to Software Startups: Spring 2025
arnabdotorg
0
240
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
283
13k
Git: the NoSQL Database
bkeepers
PRO
431
65k
Embracing the Ebb and Flow
colly
86
4.8k
GraphQLとの向き合い方2022年版
quramy
49
14k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
Navigating Team Friction
lara
188
15k
Typedesign – Prime Four
hannesfritz
42
2.7k
4 Signs Your Business is Dying
shpigford
184
22k
Transcript
ൃചͰ͖ͯΑ͔ͬͨ Kaigi on Rails new(2020/7/25) sugamasao sugamasao@gmail.com
ͩΕʁ 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͞Μͷα ϙʔτϖʔδ͔ɺஶऀͬΆ͍ਓʹڭ͑ͯΒ͑Δͱॿ ͔Γ·͢ ࠷ޙʹ