Slide 1

Slide 1 text

HIR HFNTSDBOE#VOEMFS ∁ڮ݈Ұ(.01FQBCP JOD 3VCZΤϯδχΞ͕ޠΔ೥ͷৼΓฦΓͱ͜Ε͔Β ೥ΛΩϟονΞοϓ͢Δ ࡾछͷਆث

Slide 2

Slide 2 text

&$ࣄۀ෦νʔϑςΫχΧϧϦʔυ ∁ڮ݈Ұ!LFODIBO ೥͸1ZUIPOΛগ͔͍ͬͯ͠͡·ͨ͠ IUUQTIVDSFBNOFU

Slide 3

Slide 3 text

IUUQTFNKQTMBDLJOIFSPLVBQQDPN

Slide 4

Slide 4 text

എܠ

Slide 5

Slide 5 text

3BJMT΁ͷόʔδϣϯΞοϓ ؒʹ߹͍·ͤΜͰͨ͠

Slide 6

Slide 6 text

3BJMTʹݶΒͣɺ ϥΠϒϥϦ΍ϑϨʔϜϫʔΫͷ όʔδϣϯΞοϓʹ͸ɺ HIR HFNTSD #VOEMFS ͕ศརͳͷͰɺͦͷ࿩Λ͠·͢ɻ

Slide 7

Slide 7 text

NPUFNFOHIR wHPMBOHͷσΟϨΫτϦϨΠΞ΢τͰɺιʔείʔυΛ؅ཧ͢Δπʔϧ wHJUɺIHɺTWO౳ෳ਺ͷ7$4ʹରԠ w(JU)VCɺ#JUCVDLFU͚ͩͰͳ͘ɺϓϥΠϕʔτͳϦϞʔτϦϙδτϦ ʹ΋ରԠ (JU)VC&OUFSQSJTF౳

Slide 8

Slide 8 text

BNBUTVEBHFNTSD wHFNJOTUBMMΛϑοΫͯ͠ɺ֘౰ͷϥΠϒϥϦͷιʔείʔυΛϩʔΧ ϧʹDMPOFͯ͘͠ΔHFNSCFOWϓϥάΠϯ wDMPOF͢ΔࡍʹHIRΛར༻͢Δ͜ͱ͕Ͱ͖ɺಉ͡ϨΠΞ΢τͰHFNͷ ιʔείʔυΛ؅ཧͰ͖Δ

Slide 9

Slide 9 text

CVOEMFSCVOEMFS wΞϓϦέʔγϣϯͰར༻͢ΔHFNͷґଘؔ܎Λ؅ཧ͢Δ w(FNpMFʹ͋ΔHFNͷϦετ͔Βґଘؔ܎Λղܾ͠ɺΠϯετʔϧ ͢ΔόʔδϣϯΛܾఆͯ͘͠ΕΔ wΠϯετʔϧͨ͠όʔδϣϯΛ(FNpMFMPDLʹग़ྗ͠ɺҟͳΔ؀ڥ Ͱ΋ಉ͡όʔδϣϯΛΠϯετʔϧ͢Δ͜ͱ͕Ͱ͖Δ wΦϓγϣϯΛࢦఆ͢Δ͜ͱͰSVCZHFNTPSHҎ֎͔ΒΠϯετʔϧ ͨ͠ΓɺόʔδϣϯΛࢦఆŋ੍ݶͨ͠ΓͰ͖Δ

Slide 10

Slide 10 text

HIR HFNTSDBOE#VOEMFS ϥΠϒϥϦͷόʔδϣϯΞοϓͰ໰୊͕ى͖ͨͱ͖ w೚ҙͷόʔδϣϯ΍ಛఆͷίϛοτͰಈ࡞֬ೝ͍ͨ͠ wϥΠϒϥϦͷιʔείʔυΛมߋͯ͠ಈ͔͍ͨ͠ ͱ͍͏৔໘͕͋Δ
 HIR HFNTSDͰϥΠϒϥϦͷιʔείʔυΛϩʔΧϧʹอଘ͠ɺ (FNpMFͷQBUIΦϓγϣϯͰϩʔΧϧͷίʔυΛಡΈࠐΉͱḿΔ

Slide 11

Slide 11 text

ྫ source ‘https://rubygems.org' … gem ‘composite_primary_keys’, path: `ghq list -p -e composite_primary_keys`.chomp …

Slide 12

Slide 12 text

ྑ͍ͱ͜Ζͱ஫ҙ఺ wྑ͍ͱ͜Ζ wCVOEMFJOTUBMM͠௚͢͜ͱͳ͘ɺόʔδϣϯͷ੾Γସ͑ίʔυͷॻ͖ ׵͕͑Ͱ͖Δ w஫ҙ఺ wTQSJOHͷΑ͏ͳQSFMPBEFSΛ࢖͍ͬͯΔ৔߹͸ɺ࠶ىಈ͢Δ͔มߋ ΛνΣοΫͤ͞ͳ͍ͱ͍͚ͳ͍

Slide 13

Slide 13 text

͕࣌ؒ͋Ε͹σϞ

Slide 14

Slide 14 text

·ͱΊ w3BJMTόʔδϣϯΞοϓͷݱঢ়͸࠙਌ձͰ wHIR HFNTSD #VOEMFSศར wࠓ೥͸3VCZ ͱ1)1 Λ΍͍͖ͬͯ·͢ wҰॹʹ΍͍͖ͬͯ·͠ΐ͏ʂʂ

Slide 15

Slide 15 text

ࢀߟจݙ wHIRΛ࢖ͬͨϩʔΧϧϦϙδτϦͷ౷Ұతɾޮ཰తͳ؅ཧʹ͍ͭͯ ,FOUBSP,VSJCBZBTIJTCMPH
 IUUQCMPHLFOUBSPLPSHFOUSZ wHIRHFNTSDBOENPSF
 IUUQXXXTMJEFTIBSFOFULPJDHIRHFNTSDBOENPSF