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
710
Beyond Active Record
Masafumi Okura
September 26, 2019
Tweet
Share
More Decks by Masafumi Okura
See All by Masafumi Okura
Writing documentation can be fun with plugin system
okuramasafumi
0
120
Alba: Why, How and What's So Interesting
okuramasafumi
0
250
Why did my proposals get rejected?
okuramasafumi
1
540
A suggestion for the future of RDoc
okuramasafumi
1
180
15 JSON serializers for Ruby
okuramasafumi
2
240
Tech Events, Should We See Them from the Outside or the Inside?
okuramasafumi
1
53
Creating gems 101
okuramasafumi
1
100
How NOT to make your DSL terrible
okuramasafumi
0
430
オブジェクトしこう
okuramasafumi
2
340
Other Decks in Programming
See All in Programming
PHP ステートレス VS ステートフル 状態管理と並行性 / php-stateless-stateful
ytake
0
110
SwiftUI Viewの責務分離
elmetal
PRO
2
250
Spring gRPC について / About Spring gRPC
mackey0225
0
230
ソフトウェアエンジニアの成長
masuda220
PRO
12
2k
CI改善もDatadogとともに
taumu
0
170
Conform を推す - Advocating for Conform
mizoguchicoji
3
700
パスキーのすべて ── 導入・UX設計・実装の紹介 / 20250213 パスキー開発者の集い
kuralab
3
830
時計仕掛けのCompose
mkeeda
1
310
PHPのバージョンアップ時にも役立ったAST
matsuo_atsushi
0
170
『GO』アプリ データ基盤のログ収集システムコスト削減
mot_techtalk
0
130
新宿駅構内を三人称視点で探索してみる
satoshi7190
2
110
Pulsar2 を雰囲気で使ってみよう
anoken
0
240
Featured
See All Featured
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
420
Raft: Consensus for Rubyists
vanstee
137
6.8k
Adopting Sorbet at Scale
ufuk
74
9.2k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Into the Great Unknown - MozCon
thekraken
35
1.6k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
The Cost Of JavaScript in 2023
addyosmani
47
7.3k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Bootstrapping a Software Product
garrettdimon
PRO
306
110k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
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ύλʔϯ࠷ॳ͍͍ͭɺͩ ͕ͦͷ͏ͪਏ͘ͳΔ • ղܾࡦ͢ͰʹෳఏҊ͞Ε͍ͯΔ͕ɺެࣜ ͷͷͳ͍ • ʮ౷߹͞ΕͨγεςϜʯͷதʹղܾࡦ͕ೖͬͯ
͘Δͱͬͱྑ͘ͳΓ·͢Ͷʂ