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
1.1k
新卒がみんなのウェディングで MobaSifをRailsに移行してみた - テーブル設計編 -
メドピア株式会社 × 株式会社みんなのウェディング Rails勉強会の登壇資料
https://mwed.connpass.com/event/74613/
kiyokuro
January 18, 2018
Tweet
Share
Other Decks in Programming
See All in Programming
ゲームの物理
fadis
5
1.2k
DynamoDBは怖くない!〜テーブル設計の勘所とテスト戦略〜
hyamazaki
1
200
バイブコーディング × 設計思考
nogu66
0
120
CEDEC 2025 『ゲームにおけるリアルタイム通信への QUIC導入事例の紹介』
segadevtech
3
890
A Gopher's Guide to Vibe Coding
danicat
0
150
DockerからECSへ 〜 AWSの海に出る前に知っておきたいこと 〜
ota1022
5
1.2k
Go製CLIツールをnpmで配布するには
syumai
2
1.2k
新しいモバイルアプリ勉強会(仮)について
uetyo
1
260
Webinar: AI-Powered Development: Transformiere deinen Workflow mit Coding Tools und MCP Servern
danielsogl
0
130
大規模FlutterプロジェクトのCI実行時間を約8割削減した話
teamlab
PRO
0
480
プロダクトという一杯を作る - プロダクトチームが味の責任を持つまでの煮込み奮闘記
hiliteeternal
0
460
あまり知られていない MCP 仕様たち / MCP specifications that aren’t widely known
ktr_0731
0
270
Featured
See All Featured
Bash Introduction
62gerente
614
210k
Visualization
eitanlees
146
16k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.6k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
6k
Thoughts on Productivity
jonyablonski
69
4.8k
Automating Front-end Workflow
addyosmani
1370
200k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
110
20k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
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