Slide 1

Slide 1 text

/FTU+4͕͍͍ײͩͬͨ͡ 2020/10/31 Gunma.web #39 ؔޱ ࢘

Slide 2

Slide 2 text

ࣗݾ঺հ ໊લ: ؔޱ࢘ SNS: GitHub: TsukasaGR Twitter: TsukasaGr NewsPicks: ؔޱ࢘ ࠲ӈͷ໏ ࣗ෼ͷͨΊʹɺଞਓʹਚ͘͢ ࢓ࣄ: αϥϦʔϚϯ: SIerͰडୗ։ൃ ϑϦʔϥϯε: ελʔτΞοϓͷWebΤϯδχΞ ࠷ۙ৮ͬͯΔ΋ͷ: Javascript/Typescript(Vue.js/Nuxt.js/NestJS/React)ɺCordova

Slide 3

Slide 3 text

/FTU+4ͱ͸ʁ

Slide 4

Slide 4 text

/PEFKTͷ͍͍ײ͡ͷϑϨʔϜϫʔΫ w /PEFKT൛ͷ-BSBWFM΍3BJMTΈ͍ͨͳϑϧελοΫ'8 w 5ZQF4DSJQU੡ w "OHVMBSΛΠϯεύΠΞͯͭ͘͠ΒΕͨ΋ͷ w ͪ͜ΒͷεϥΠυʹ͔ͬ͠Γॻ͔Ε͍ͯ·͢ https://speakerdeck.com/potato4d/what-is-nestjs-number-nestjs-meetup

Slide 5

Slide 5 text

/PEFKT'8ͷݱঢ়

Slide 6

Slide 6 text

ѹ౗తFYQSFTTҰڧ

Slide 7

Slide 7 text

ͨͩ͠/FTU+4͕৳ͼ͖ͯͯΔ

Slide 8

Slide 8 text

FYQSFTT͡Όμϝͳͷʁ

Slide 9

Slide 9 text

FYQSFTTͷϓϩίϯ w 1SPT w ࠷௿ݶͷػೳ͚ͩͳͷͰ͍ܰ w αʔόʔϨεͰ౎౓ݺͼग़͢৔߹ͳΜ͔΋ศར w $POT w ࠷௿ݶͷػೳ͚ͩͰແ๏஍ଳͳͷͰɺͪΐͬͱෳࡶͳ͜ͱ΍Ζ ͏ͱ͢ΔͱͲΜͳॻ͖ํͰ΋Ͱ͖ͯ͠·͏ w શ෦ࣗ෼Ͱॻ͔ͳ͍ͱ͍͚ͳ͍ '8Λ࢖ͬͯΔײ͕͋͡·Γͳ ͍

Slide 10

Slide 10 text

FYQSFTTͷ࢖͍Ͳ͜Ζ w (PPE w ΤϯυϙΠϯτ͕͔ͭ͠ͳ͍"1* σϞ༻ͱ͔ w αʔόʔϨεͷόοΫΤϯυ ىಈ͕͍ܰͷͰ w #BE w ΰϦΰϦʹ࣮૷͕ඞཁͳ"1* w ෳ਺ਓͰ։ൃ ͋Δఔ౓੍໿͕΄͍͠ͷͰ

Slide 11

Slide 11 text

FYQSFTTͷ࢖͍Ͳ͜Ζ w (PPE w ΤϯυϙΠϯτ͕͔ͭ͠ͳ͍"1* σϞ༻ͱ͔ w αʔόʔϨεͰར༻ ىಈ͕͍ܰͷͰ w #BE w ΰϦΰϦʹ࣮૷͕ඞཁͳ"1* w ෳ਺ਓͰ։ൃ ͋Δఔ౓੍໿͕΄͍͠ͷͰ ࠓ·Ͱͷ/PEFKT͸͕͜͜ऑ͔ͬͨ

Slide 12

Slide 12 text

FYQSFTTͷ࢖͍Ͳ͜Ζ w (PPE w ΤϯυϙΠϯτ͕͔ͭ͠ͳ͍"1* σϞ༻ͱ͔ w αʔόʔϨεͰར༻ ىಈ͕͍ܰͷͰ w #BE w ෳ਺ͷΤϯυϙΠϯτΛ࣋ͭ"1* ΄ͱΜͲͦ͏ͩΑͶ w ෳ਺ਓͰ։ൃ ͋Δఔ౓੍໿͕΄͍͠ͷͰ ࠓ·Ͱͷ/PEFKT͸͕͜͜ऑ͔ͬͨ /FTU+4͕͢΂ͯղܾͯ͘͠ΕΔʂ

Slide 13

Slide 13 text

/FTU+4ͷ͍͍ײ͡ͳ ͱ͜Ζ ˞ͨ͘͞Μ͋ΔͷͰҰ෦͚ͩ

Slide 14

Slide 14 text

%*ίϯςφ͕͍͍ײ͡ w େ͖ͳొ৔ਓ෺͸.PEVMFT$POUSPMMFST4FSWJDFT 㲈1SPWJEFST w .PEVMFͰґଘؔ܎Λ·ͱΊɺඞཁͳ.PEVMFΛ౎౓ݺͼग़͢ w ٯʹ.PEVMFʹͳ͍΋ͷΛ௚઀ݺͼग़ͤͳ͍ (MPCBMʹ͢Ε͹ผ

Slide 15

Slide 15 text

%*ίϯςφ͕͍͍ײ͡ w େ͖ͳొ৔ਓ෺͸.PEVMFT$POUSPMMFST4FSWJDFT 㲈1SPWJEFST w .PEVMFͰґଘؔ܎Λ·ͱΊɺඞཁͳ.PEVMFΛ౎౓ݺͼग़͢ w ٯʹ.PEVMFʹͳ͍΋ͷΛ௚઀ݺͼग़ͤͳ͍ (MPCBMʹ͢Ε͹ผ 3PPUϞδϡʔϧ 6TFSϞδϡʔϧ ͜ͷΞϓϦ͸6TFS$POUSPMMFSΛ ࢖͏͜ͱ͕Ͱ͖Δ w 6TFS$POUSPMMFS͸ҎԼΛ࢖͏͜ͱ͕Ͱ͖Δ w 6TFS4FSWJDF w 4VC.PEVMF഑Լͷ֤छαʔϏε w 6TFS4FSWJDF͸ҎԼΛ࢖͏͜ͱ͕Ͱ͖Δ w 4VC.PEVMF഑Լͷ֤छαʔϏε 4VCϞδϡʔϧ

Slide 16

Slide 16 text

%*ίϯςφ͕͍͍ײ͡ w ґଘੑͷ஫ೖ͸ίϯετϥΫλͰఆٛͰ͖Δ w ্ॻ͖΋Ͱ͖ΔͷͰ͓࡞๏ʹଇͬͯॻ͚ͩ͘Ͱࣗવͱςελϒϧ ʹͳΔ

Slide 17

Slide 17 text

%*ίϯςφ͕͍͍ײ͡ w ґଘੑͷ஫ೖ͸ίϯετϥΫλͰఆٛͰ͖Δ w ্ॻ͖΋Ͱ͖ΔͷͰ͓࡞๏ʹଇͬͯॻ͚ͩ͘Ͱࣗવͱςελϒϧ ʹͳΔ 6TFS$POUSPMMFS 6TFS$POUSPMMFS಺Ͱ ͸zUIJTVTFS4FSWJDFzͱͯ͠ѻ͑Δ σϑΥϧτͰ͸6TFS4FSWJDFΛ஫ೖ͍ͯ͠Δ͕ɺ ςετ࣌ͷΈϞοΫʹ͢Γସ࣮͑ͯߦ͢Δ͜ͱ͕ Ͱ͖Δ ςετ

Slide 18

Slide 18 text

ϧʔςΟϯά͕͍͍ײ͡ w Ξϊςʔγϣϯ σίϨʔλ ͰϧʔςΟϯάΛઃఆͰ͖Δ w ϑΝΠϧΛ։͘ͱ͙͢ʹύε͕Θ͔ΔͷͰՄಡੑ˕

Slide 19

Slide 19 text

ϧʔςΟϯά͕͍͍ײ͡ w Ξϊςʔγϣϯ σίϨʔλ ͰϧʔςΟϯάΛઃఆͰ͖Δ w ϑΝΠϧΛ։͘ͱ͙͢ʹύε͕Θ͔ΔͷͰՄಡੑ˕ VTFSTΛࢦఆ͍ͯ͠ΔͷͰɺ͜ͷ $POUSPMMFS಺ͷύε͸ IUUQTYYYDPNVTFSTYYY ʹͳΔ IUUQTYYYDPNVTFST IUUQTYYYDPNVTFST

Slide 20

Slide 20 text

ϗοτϦϩʔυ͕͍͍ײ͡ w lZBSOTUBSUEFWz͢Ε͹มߋΛ͙͢ʹ൓өͰ͖Δ w ϑϩϯτͷؾ࣋ͪΑ͞Λ"1*࣮૷Ͱ΋ମײͰ͖Δ

Slide 21

Slide 21 text

ϗοτϦϩʔυ͕͍͍ײ͡ w lZBSOTUBSUEFWz͢Ε͹มߋΛ͙͢ʹ൓өͰ͖Δ w ϑϩϯτͷؾ࣋ͪΑ͞Λ"1*࣮૷Ͱ΋ମײͰ͖Δ

Slide 22

Slide 22 text

ϚΠάϨʔγϣϯ͕͍͍ײ͡ w &OUJUZσίϨʔλΛॻ͍ͨϑΝΠϧΛ༻ҙ͓͚ͯͩ͘͠ w ͋ͱ͸zZBSOTUBSUEFWz͢Ε͹ࣗಈͰ%#ʹ൓ө͞ΕΔ w ࣗಈखಈ੾ସ͸ઃఆͰมߋͰ͖Δ

Slide 23

Slide 23 text

ϚΠάϨʔγϣϯ͕͍͍ײ͡ w &OUJUZσίϨʔλΛॻ͍ͨϑΝΠϧΛ༻ҙ͓͚ͯͩ͘͠ w ΋ͪΖΜVQEPXOͷΑ͏ͳϚΠάϨʔγϣϯ΋ֻ͚Δ w ͋ͱ͸zZBSOTUBSUEFWz͢Ε͹ࣗಈͰ%#ʹ൓ө͞ΕΔ w ࣗಈखಈ੾ସ͸ઃఆͰมߋͰ͖Δ

Slide 24

Slide 24 text

03.͕͍͍ײ͡ w 3BJMTͰ͍͏"DUJWF3FDPSEɺ-BSBWFMͰ͍͏&MPRVFOUͷΑ͏ͳ 03.Λॻ͚Δ

Slide 25

Slide 25 text

03.͕͍͍ײ͡ w 3BJMTͰ͍͏"DUJWF3FDPSEɺ-BSBWFMͰ͍͏&MPRVFOUͷΑ͏ͳ 03.Λॻ͚Δ

Slide 26

Slide 26 text

όϦσʔγϣϯ͕͍͍ײ͡ w σίϨʔλͰόϦσʔγϣϯఆٛͰ͖Δ w ࣗ࡞όϦσʔγϣϯ΋࣮૷Ͱ͖Δ

Slide 27

Slide 27 text

όϦσʔγϣϯ͕͍͍ײ͡ w σίϨʔλͰόϦσʔγϣϯఆٛͰ͖Δ w ࣗ࡞όϦσʔγϣϯ΋࣮૷Ͱ͖Δ

Slide 28

Slide 28 text

4XBHHFS6*͕͍͍ײ͡ w l!OFTUKTTXBHHFSzͱ͍͏ެࣜύοέʔδ͕༻ҙ͞Ε͍ͯΔ w σίϨʔλΛॻ͚ͩ͘Ͱ4XBHHFS6*ʹࣗಈ൓ө͞ΕΔ

Slide 29

Slide 29 text

4XBHHFS6*͕͍͍ײ͡ w l!OFTUKTTXBHHFSzͱ͍͏ެࣜύοέʔδ͕༻ҙ͞Ε͍ͯΔ w σίϨʔλΛॻ͚ͩ͘Ͱ4XBHHFS6*ʹࣗಈ൓ө͞ΕΔ Ϩεϙϯεఆٛ ϓϩύςΟఆٛ ͓ͳ͡Έͷ4XBHHFS6*

Slide 30

Slide 30 text

ͦͷଞ΋͍͍ײ͡ w ೝূ w ϛυϧ΢ΣΞ w /P42- w (SBQI2- w H31$ w ͳͲͳͲ৭ʑͳ΋ͷΛެࣜύοέʔδܦ༝Ͱར༻Ͱ͖Δ

Slide 31

Slide 31 text

͍͞͝ʹ

Slide 32

Slide 32 text

όοΫΤϯυ΋+4 54 ͷ࣌୅͕དྷ͔ͨ΋ w αʔόʔϨεͰϥΠτͳόοΫΤϯυͰ͋Ε͹FYQSFTTͷར༻͕ ଟ͍͕ɺຊ֨తͳ3FTU(SBQI2-"1*Λͭ͘Ζ͏ͱ͢Δͱ(P -BSBWFM3BJMTͳͲ͕·ͩ·ͩओྲྀͳΑ͏ʹײ͍ͯ͡Δ w /FTU+4ͷొ৔ͰҰؾʹόοΫΤϯυ΋+4 54 ͷ࣌୅͕དྷΔ͔΋ ͠Εͳ͍ w ϑϩϯτΤϯδχΞ΋ڠྗ͠΍͍͢ ಛʹ"OHVMBSͩͱ ͷͰϚδ Ͱ͋Δ͔΋͠Εͳ͍ w ࠓճͭͬͨ͘αϯϓϧ͸ͪ͜Βʹ্͛ͯ·͢ https://github.com/TsukasaGR/nest-example

Slide 33

Slide 33 text

͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠