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
20k
0
Share
Perfect Ruby on Rails v2
パーフェクトRuby on Rails【増補改訂版】が発売したので少し裏話をお伝えします
sugamasao
July 25, 2020
More Decks by sugamasao
See All by sugamasao
マルチプロダクト環境におけるSREの役割 / SRE NEXT 2025 lunch session
sugamasao
1
2.2k
EMConf JP 2025 懇親会LT / EMConf JP 2025 social gathering
sugamasao
2
870
マルチプロダクトな開発組織で 「開発生産性」に向き合うために試みたこと / Improving Multi-Product Dev Productivity
sugamasao
1
760
開発生産性、上から見るか 下から見るか / development productivity and cognitive science
sugamasao
12
13k
開発の安定性・スループットを定量的に見る #とは / Quantitative view of development
sugamasao
1
1.3k
SaaS.tech #1 / SmartHR
sugamasao
2
7.1k
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
AI時代の私の技術インプットとアウトプット術
tonkotsuboy_com
16
8.2k
Agentic ERPをどう設計するか ー 受発注エージェントを動かす、現場の知見と設計思想ー
recerqainc
1
840
関西に縁あるMicrosoft MVPsが語るCopilotの未来
kasada
0
1k
サプライチェーンセキュリティの空白地帯 - 信頼できる”依存性”の未来を考える
rung
PRO
2
640
Chart.js が簡単に使えるようになっていたので OGP 画像生成に使った話
kamekyame
0
140
Platform Engineering as a Product: Criteria for Improvement and Multi-Tenant Design
kumorn5s
0
480
AI Engineering Summit Tokyo 2026 AIの前に、やることがある 〜医療データ企業の4フェーズ〜
dtaniwaki
0
1.2k
コードレビューを制するチームがソフトウェアデリバリーのフローを制す / Beyond Code Review: Distributing Its Responsibilities Across the SDLC
mtx2s
3
810
実装は速くなった、レビューはどうする? ― 自身のレビューをAIで再現させるサーヴァントエンジニアリングのすゝめ / Implementation got faster. So what about reviews? — An invitation to Servant Engineering: Recreating your own code reviews with AI
nrslib
6
2.7k
Diagnosing performance problems without the guesswork
elenatanasoiu
0
150
Datadog 認定試験の概要と対策
uechishingo
0
230
OCI Oracle AI Database Services新機能アップデート(2026/03-2026/05)
oracle4engineer
PRO
0
150
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
28
2.6k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
530
sira's awesome portfolio website redesign presentation
elsirapls
0
270
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
130
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.6k
Automating Front-end Workflow
addyosmani
1370
210k
Producing Creativity
orderedlist
PRO
348
40k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
420
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͞Μͷα ϙʔτϖʔδ͔ɺஶऀͬΆ͍ਓʹڭ͑ͯΒ͑Δͱॿ ͔Γ·͢ ࠷ޙʹ