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
630
Beyond Active Record
Masafumi Okura
September 26, 2019
Tweet
Share
More Decks by Masafumi Okura
See All by Masafumi Okura
How NOT to make your DSL terrible
okuramasafumi
0
58
オブジェクトしこう
okuramasafumi
2
190
Debugging Alba
okuramasafumi
1
150
Learning Ruby
okuramasafumi
5
500
How to build a conference for both newbies and seasoned devs
okuramasafumi
1
1.5k
Why doesn't Ruby have Boolean class?
okuramasafumi
4
2k
Writing Minitest clone in 30 minutes
okuramasafumi
0
410
Developing a Vim plugin with Ruby
okuramasafumi
0
620
On proposals
okuramasafumi
0
330
Other Decks in Programming
See All in Programming
CSC307 Lecture 07
javiergs
PRO
0
220
Mastering Developer Experience: A Roadmap for Success 【開発生産性Conference 2024】
findyinc
1
380
SDCon2024: Enabling DevOps and Team Topologies thru architecture: architecting for fast flow
cer
PRO
0
780
Google's Recipe for Scaling (Web) Security – LocoMocoSec 2024
lweichselbaum
0
170
Webエディタライブラリ 「CodeMirror」から学ぶ Webアプリ開発のテクニック
ryosukeigarashi
0
250
【Go言語】golangci-lintの使い方
tomo1227
0
270
AHC035解説
terryu16
0
710
開発部に不満を持っていたCSがエンジニアにジョブチェンしてわかった「勝手に諦めない」ことの大切さ
sakuraikotone
28
16k
Cloudflare Workers x AWS Lambdaの組み合わせユースケース / Cloudflare Workers x AWS Lambda Combination Use Case
seike460
PRO
2
310
feature環境をGitHub ActionsとCloudFormationでいい感じに管理する
nealle
2
310
社内 LT 会を発足し、アウトプット文化を醸成させるために考えたこと・やったこと / Starting internal LT meetings and fostering an output culture
mackey0225
3
120
Composing an API the *right* way (Droidcon Berlin 2024)
zsmb
1
450
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
33
6.9k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
325
21k
Making the Leap to Tech Lead
cromwellryan
127
8.7k
Side Projects
sachag
451
42k
Mobile First: as difficult as doing things right
swwweet
219
8.8k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
353
29k
WebSockets: Embracing the real-time Web
robhawkes
59
7.2k
How GitHub (no longer) Works
holman
305
140k
From Idea to $5000 a Month in 5 Months
shpigford
377
46k
In The Pink: A Labor of Love
frogandcode
139
22k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
662
120k
GraphQLとの向き合い方2022年版
quramy
36
13k
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ύλʔϯ࠷ॳ͍͍ͭɺͩ ͕ͦͷ͏ͪਏ͘ͳΔ • ղܾࡦ͢ͰʹෳఏҊ͞Ε͍ͯΔ͕ɺެࣜ ͷͷͳ͍ • ʮ౷߹͞ΕͨγεςϜʯͷதʹղܾࡦ͕ೖͬͯ
͘Δͱͬͱྑ͘ͳΓ·͢Ͷʂ