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
Beyond Active Record
Search
Masafumi Okura
September 26, 2019
Programming
3
730
Beyond Active Record
Masafumi Okura
September 26, 2019
Tweet
Share
More Decks by Masafumi Okura
See All by Masafumi Okura
My KaigiEffect at RubyKaigi 2025, part 1
okuramasafumi
1
39
Writing documentation can be fun with plugin system
okuramasafumi
0
180
Alba: Why, How and What's So Interesting
okuramasafumi
0
370
Why did my proposals get rejected?
okuramasafumi
1
670
A suggestion for the future of RDoc
okuramasafumi
1
310
15 JSON serializers for Ruby
okuramasafumi
2
360
Tech Events, Should We See Them from the Outside or the Inside?
okuramasafumi
1
69
Creating gems 101
okuramasafumi
2
140
How NOT to make your DSL terrible
okuramasafumi
0
560
Other Decks in Programming
See All in Programming
PipeCDのプラグイン化で目指すところ
warashi
1
240
Railsアプリケーションと パフォーマンスチューニング ー 秒間5万リクエストの モバイルオーダーシステムを支える事例 ー Rubyセミナー 大阪
falcon8823
4
1k
RailsGirls IZUMO スポンサーLT
16bitidol
0
130
5つのアンチパターンから学ぶLT設計
narihara
1
140
エンジニア向け採用ピッチ資料
inusan
0
180
Select API from Kotlin Coroutine
jmatsu
1
210
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
50
32k
ふつうの技術スタックでアート作品を作ってみる
akira888
0
300
Team operations that are not burdened by SRE
kazatohiei
1
290
Modern Angular with Signals and Signal Store:New Rules for Your Architecture @enterJS Advanced Angular Day 2025
manfredsteyer
PRO
0
170
Flutterで備える!Accessibility Nutrition Labels完全ガイド
yuukiw00w
0
140
GoのGenericsによるslice操作との付き合い方
syumai
3
710
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Typedesign – Prime Four
hannesfritz
42
2.7k
How to Ace a Technical Interview
jacobian
277
23k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
How GitHub (no longer) Works
holman
314
140k
Making Projects Easy
brettharned
116
6.3k
Testing 201, or: Great Expectations
jmmastey
42
7.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
Rails Girls Zürich Keynote
gr2m
94
14k
Transcript
Active Recordͷ ͜͏ଆ Place: Rails Developers Beer Bash Date: 2019-09-26
Speaker: େխ࢙
ࣗݾհ • ໊લɿେխ࢙ • ৬ۀɿϑϦʔϥϯεͷRubyϓϩάϥϚ • ҰݴɿVimConfͷӡӦͬͯ·͢ɺ11݄3։ ࠵ʂνέοτ·ͩ͋ΔΑʂ • ೋݴɿGrow.rbͱ͍͏ίϛϡχςΟͬͯ·͢
ActiveRecord ͖ͳਓ✋
Ruby Weekly ͍ͬͯΔਓ✋
ࠓͷLTͷ͖͔͚ͬ
https://rubyweekly.com/ issues/467
> Active Record is the worst of all the popular
ORM patterns
None
ຊʹͦ͏ͳͷ͔ʁ
ʮRuby on Railsͷ ਖ਼ମͱ͖߹͍ํʯ https://speakerdeck.com/yasaichi/what-is-ruby-on-rails- and-how-to-deal-with-it
Active RecordͰίʔϧ όοΫͱόϦσʔγϣϯͰ σʔλϞσϧͱϢʔεέʔε ͕ີ݁߹͓ͯ͠ΓɺͦΕ͕ߴ ։ൃΛՄೳʹ͍ͯ͠Δ
ີ݁߹ѱ☠
Active Recordಉ͡σʔλ ϞσϧʹෳͷϢʔεέʔε ͕ద༻͞ΕΔͱਏ͘ͳΔ
͜Ε·ͰʹఏҊ͞Εͨղܾࡦ
ʮRuby (off|with) the Railsʯ https://speakerdeck.com/shinpeim/ruby-off-with-the- rails
Ϣʔεέʔε͕ҟͳΔෳͷ Ϟσϧ͕ಉ͡ςʔϒϧΛࢀর ͢Δ
ʮApplicationModel ͷ͋Δ ෩ܠʯ https://speakerdeck.com/hshimoyama/rails-with- applicationmodel
ςʔϒϧʹඥ͔ͳ͍Ϟσϧ ʢApplicationModelʣΛఆ ٛ͢Δ
ͦͯ͠ɺօ͞Μ͓ͳ͡Έͷ αʔϏεΫϥε
ͲΕΑͦ͞͏☺
͕ͩͲΕެࣜͰͳ͍
ͱ͜ΖͰɺ࠷ۙͷDHHͷൃݴ Λฉ͍͍ͯΔͱɺ ʮ౷߹͞ΕͨγεςϜ ʢintegrated systemsʣʯ ʮݫͳϞϊϦε ʢmajestic monolithsʣʯ ͷݴٴ͕ଟ͍
https://rubyonrails.org/ doctrine/#integrated- systems
໌֬ͳϞϊϦεࢦ
࠷ۙͷRailsActive Storage ϚϧνDBػೳͷΑ͏ʹgem ͷػೳΛऔΓࠐΈͭͭ͋Δ
ཚཱ͢ΔαʔϏεΫϥεϥΠ ϒϥϦ
DHH͞ΜɺActive Recordͷ ্ʹͤΔύλʔϯ ”Omakase”Ͱग़ͯ͘͠Ε· ͤΜ͔Ͷʁ
·ͱΊ • Active Recordύλʔϯ࠷ॳ͍͍ͭɺͩ ͕ͦͷ͏ͪਏ͘ͳΔ • ղܾࡦ͢ͰʹෳఏҊ͞Ε͍ͯΔ͕ɺެࣜ ͷͷͳ͍ • ʮ౷߹͞ΕͨγεςϜʯͷதʹղܾࡦ͕ೖͬͯ
͘Δͱͬͱྑ͘ͳΓ·͢Ͷʂ