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
新卒がみんなのウェディングで MobaSifをRailsに移行してみた - テーブル設計編 -
Search
kiyokuro
January 18, 2018
Programming
0
900
新卒がみんなのウェディングで MobaSifをRailsに移行してみた - テーブル設計編 -
メドピア株式会社 × 株式会社みんなのウェディング Rails勉強会の登壇資料
https://mwed.connpass.com/event/74613/
kiyokuro
January 18, 2018
Tweet
Share
Other Decks in Programming
See All in Programming
What We Can Learn From OSS
inouehi
0
420
初心者のためのRubyKaigi入門/RubyKaigi Introduction
a_matsuda
2
850
MetricKitで予期せぬ終了を検知する話 / Detect unexpected termination with MetricKit
nekowen
1
190
Git Rebase
bkuhlmann
11
1.6k
Node.js v22 で変わること
yosuke_furukawa
PRO
9
3.5k
ONE WEDGE_company_guide
1wedge_one
0
490
効率化に挑戦してみたらモバイル開発が少し快適になった話
ryunakayama
0
130
エンターテイメント業界で利用されるAWS
demuyan
0
210
1BRC--Nerd Sniping the Java Community
gunnarmorling
0
340
DMMプラットフォームがTiDB Cloudを採用した背景
pospome
8
4.1k
try! Swift Tokyo 2024 参加報告 / try! Swift Tokyo 2024 Report
hironytic
0
210
PHPはいつから死んでいるかの調査
chiroruxx
1
400
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
325
20k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
659
120k
10 Git Anti Patterns You Should be Aware of
lemiorhan
648
58k
The Power of CSS Pseudo Elements
geoffreycrofte
60
5k
RailsConf 2023
tenderlove
4
540
Dealing with People You Can't Stand - Big Design 2015
cassininazir
357
22k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
121
39k
How to train your dragon (web standard)
notwaldorf
73
5.2k
Atom: Resistance is Futile
akmur
259
25k
[RailsConf 2023] Rails as a piece of cake
palkan
23
4k
We Have a Design System, Now What?
morganepeng
43
6.8k
Building Adaptive Systems
keathley
31
1.9k
Transcript
৽ଔ͕ΈΜͳͷΣσΟϯάͰ .PCB4JGΛ3BJMTʹҠߦͯ͠Έͨ - ςʔϒϧઃܭฤ - גࣜձࣾΈΜͳͷΣσΟϯά ࠇᖒਗ਼ 1
ࣗݾհ 2 ࠇᖒ ਗ਼(͘Ζ͞Θ ͖Α͔ͣ) 2017/4~ ΈΜͳͷΣσΟϯά ٕज़ RailsτϨʔχϯάத ඒज़ؗ८ΓɺԾ௨՟
എܠ w d݄͔ΒجૅݚमΛ͠·ͨ͠ w 3BJMT5VUPSJBM w %#ઃܭ w ΦϒδΣΫτࢦ w
݄͔Β0+5ͰΈΜͳͷΣσΟϯάͷ3BJMTҠߦΛ͢Δ w ৽ଔΤϯδχΞͷݚमͷҰ w ݱߦͷγεςϜ.PCB4J'ͱ͍͏1FSMϑϨʔϜϫʔΫ w lϦχϡʔΞϧzͰͳ͘zҠߦz 3
3BJMTҠߦର w ΈΜͳͷΣσΟϯάͷ૬ஊ w .PCB4J'ͷγεςϜ͔ΒҠߦ͢Δ w ૬ஊϢʔβ͕݁ࠗؔ࿈ͷҙݟަΛ͢Δ w .PCB4J'ͷঢ়ଶ͔Βઃܭɺ։ൃɺϦϦʔε·Ͱ௨͠ 4
ݱঢ়ௐࠪ 5
%#Λ͍ͯΈΔ w ಡΊͳ໊͍લͷΧϥϜ w ༻్ෆ໌ͳΧϥϜ w ར༻ঢ়گͷΘ͔Βͳ͍ΧϥϜ 6 • ૬ஊͷςʔϒϧ
ques_data
ௐࠪͷऔΓΈ w ಓʹௐࠪ w ઌഐࣾһʹฉ͘ w ʮVTFGVM@HPPE@OVNʯͱʮVTFGVM@OVNʯɺ ʮHPPE@UPUBM@OVNʯͷҧ͍ԿͰ͔͢ʁʁ w ʮDFO@qHʯʹೖ͍ͬͯΔ
< >ͷҙຯ ԿͰ͔͢ʁʁ w ෆ໌ͳͷ࣮ࡍʹσʔλΛ࡞ͬͯมԽΛ֬ೝ 7
طଘςʔϒϧఘΊΔ 8
ํ w ςʔϒϧͷ࠶ઃܭΛ͢Δ w ࠶ઃܭͯ͠Өڹൣғ͕খ͍͞ͷͰڐՄ͞ΕΔ w Өڹ͕ग़Δൣғ.PCB4J'Ͱमਖ਼ 9
3BJMTͷ3BJMʹΔ w ςʔϒϧ໊ɾΧϥϜ໊ʹུޠΘͳ͍ w ςʔϒϧ໊ෳܗʹ͢Δ w ओΩʔJEʹ͢Δ w DSFBUFE@BUͱVQEBUFE@BUΛՃ͢Δ 10
ΧϥϜͷμΠΤοτʴਖ਼نԽ w ͍ͬͯͳ͍ΧϥϜফ͢ɻ·ͱΊΔɻ w ϚϧνΧϥϜΞτϦϏϡʔτ ΞϯνύλʔϯΛղফ w 42-Ξϯνύλʔϯ 11 ̍ͭͷΧϥϜʹ·ͱΊΔ
ΘΕ͍ͯͳ͍ͷͰআ ผςʔϒϧʹΓग़͢ ݄ʹ͢Δ
ςʔϒϧઃܭͷϨϏϡʔ w Ϛωʔδϟʔʰςʔϒϧઃܭ͕ਖ਼͘͠ͳ͍ͱΞϓϦέʔγϣϯ ͕ਖ਼͘͠࡞Εͳ͍ͷͰςʔϒϧઃܭ͔ͬ͠Γ͢Δʱ w ΈΜͳͷΣσΟϯάͷαϒγεςϜͳͷͰQSFpY͚ͭͨํ͕ ͍͍ w ը૾ϙϦϞʔϑΟοΫؔ࿈ʹ͢Δͷ͔ w
૬ஊͷछྨΧςΰϦ͔λά͔ 12
ͨ͠ςʔϒϧ 13 After Before 36ΧϥϜ 11ΧϥϜ
σʔλҠߦ 14
σʔλҠߦͷௐࠪ w (JUIVCͰςʔϒϧͷσʔλҠߦΛߦͳͬͨ*TTVFΛ୳͢ w σʔλҠߦͷ࣮͕ͳͦ͞͏ w ࠓ·Ͱͷ3BJMTҠߦͰςʔϒϧͷ࠶ઃܭͳ͔ͬͨͨΊ 15
σʔλҠߦεΫϦϓτΛ࡞Δ w σʔλҠߦͷεΫϦϓτSBJMTͰ࡞Δ͔TRMॻ͔͘໎͏ w SBJMTͷͲͷσΟϨΫτϦͰʁچςʔϒϧͷNPEFMͳ͍͚Ͳ w TRMΰϦΰϦෳࡶͳॲཧͷ࣮େมͦ͏ɻ w σʔλҠߦ̍ճ͚࣮ͩߦ͢Δ͔ΒͱΘͳ͍༧ఆ w
؆୯ͳTRMͳΒΰϦΰϦॻ͘ͷେৎ 16
3VCZ 42-ͰσʔλҠߦ w جຊతͳॲཧTFMFDU JOTFSU42-Ͱ͢Δ w ϚϧνΧϥϜΞτϦϏϡʔτΞϯνύλʔϯɺͷมߋ3VCZ Ͱॲཧ͢Δ 17 2Ϩίʔυʹ͚Δ
ϢʔβIDͷԼܻ̏औΓग़͢
ຊ൪࣮ߦલʹݕূ 18
ͦͯ͠ɾɾɾ 19
৽ͨͳςʔϒϧͰ։ൃ w ϨίʔυՃߋ৽͕؆୯ʹͳͬͨ w ෆཁͳΧϥϜͷଘࡏΛؾʹ͠ͳ͍͍ͯ͘ w গͳ͍ίʔσΟϯάͰ"DUJWF3FDPSE͕͑Δ w 3BJMTͰNPEFMΛ࡞ͬͯϦϨʔγϣϯΛషͬͨ࣌ʹɺςʔϒϧ ໊ɾ֎෦ΩʔΛࢦఆ͠ͳ͍͍ͯ͘
20
·ͱΊ 21
·ͱΊ w ৗʹௐΔˠͬͯΈΔͷ܁Γฦ͠ w ฉ͍༷ͯΘ͔Βͳ͍͜ͱ͕͋Δͱ͍͏ݱ࣮ w ςʔϒϧઃܭ͕ΞϓϦ։ൃͷͳͷͰ೦ೖΓʹ͢Δ w σʔλҠߦಠཱͨ͠ϓϩάϥϜͰ࣮͕ͨ͠ɺ"DUJWF3FDPSE Λͬͨόονॲཧͷ࣮ݕ౼Ͱ͖Δ
22