/FTU+4Λ׆༻ͨ͠3&45"1*αʔό
View Slide
ࣗݾհ!SEMBCPҰൠࣾஂ๏ਓϦϨʔγϣϯσβΠϯݚڀॴදཧࣄҰൠࣾஂ๏ਓ"SFB*OOPWBUJPO"MJBODF$50*POJD+BQBO6TFS(SPVQද
ίϯτϦϏϡʔλʔionic-team/ionicionic-team/startersionic-team/ionic-cliionic-team/ionic-docsionic-team/ionic-react-conference-appGoogleChrome/lighthouse
όοΫΤϯυͱϑϩϯτΤϯυͷͭͳ͗ํ
ϨϯμϦϯάίετ͕ॏ͍ಈతαΠτ .PEFMͰσʔλΛܗͯ͠ ߹ʹΑͬͯ$PUSPMMFSͰͦΕΛల։ɾ࠶ܗͯ͠ 7JFXͰల։͢Δ
ΤϥʔϋϯυϦϯά͕͍͠ಈతαΠτ
ΑΓΑ͍69Λࢦͯ͠੩తαΠτ4JOHMF1BHF"QQMJDBUJPO 41" 3&45"1*(SBQI2-ʹΑΔόοΫΤϯυͱϑϩϯτΤϯυͷϒϦοδ +BWB4DSJQUʹΑΔϦονͳ6*1SPHSFTTJWF8FC"QQT 18"41"8FC"1*ಈతαΠτΑΓΑ͍69Λࢦ͢
+40/ͰͷΓͱΓ͕Ұൠతͳख๏ʹɻόοΫΤϯυ\n^ϑϩϯτΤϯυ\n^
+40/Ͱൃ͢Δͱ͍͏Ҏ্ͷใڞ༗Ͱ͖͍ͯ·͔͢ʁόοΫΤϯυ\n^ϑϩϯτΤϯυ\n^ѫࡰͯ͠΄͍͠(&5IFMMPʁʁ3&45Ͱɺॲཧํ๏ͱྨ͔͠ఆٛͯ͘͠Εͳ͍ɻ
ཧͷੈքόοΫΤϯυ\n^\OBNFTUSJOHEFTDTUSJOHJNBHFTUSJOHVSMTUSJOH^<>ͰσʔλΛૹΔˠϑϩϯτΤϯυ\n^\OBNFTUSJOHEFTDTUSJOHJNBHFTUSJOHVSMTUSJOH^<>Ͱσʔλ͕ཉ͍͠ˡ
ͦ͏ͩ5ZQF4DSJQUͩʂw"1*ͷܕΛڞ༗Ͱ͖Δͷ5ZQF4DSJQU͚ͩʢwFYQSFTTϑϨʔϜϫʔΫͱͯͪ͠ΐͬͱബ͍w/FTU+4ϑϨʔϜϫʔΫͱͯ͠ͷػೳ͕ेɾ3&45"1*Λ࠾༻ͯ͠ΔɾৄࡉυΩϡϝϯτͱͷೋॏཧΛͨ͘͠ͳ͍ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹʜϓϩδΣΫτͰΦεεϝ8FC"TTFNCMZͳͲͷಈ࡞ڥΛআ͖·͢
ܕͷڞ༗ʹ͍ͭͯ
͡Ό͋Ͳ͏ͬͯܕΛڞ༗͢ΔʁʁόοΫΤϯυ\n^ϑϩϯτΤϯυ\n^Ͳ͏ͬͯܕΛڞ༗ʁOQNύοέʔδʹ͢Δ ˕ ཧతɻͨͩ͠อक͕खؒɻ/FTU+4ͷϓϩδΣΫτʹஔ̋͘ݱ࣮తɻϑϩϯτΤϯυ͔Β webpackͰόϯυϧϓϩδΣΫτ֎ʹ͓͘ ˚ tscίϚϯυͷઃఆΛཁมߋʢະௐࠪʣ
σϞʢձͰͷܕΤϥʔͷ࣮ԋʹͳΓ·͢ʣ
XFCQBDLͱUTDίϚϯυҧ͏XFCQBDLόϯυϥʔɻUZQFTDSJQUύοέʔδΛར༻͢Δ͜ͱͰɺSFRVJSFؔJNQPSUؔΛఏڙͯ͠ґଘؔղܾࡁΈͷγϯϓϧͳϑΝΠϧΛग़ྗ͢Δ͜ͱ͕Ͱ͖ΔɻUTDίϚϯυ5ZQF4DSJQU͔Β+BWB4DSJQUͷίϯύΠϧΛߦ͏ɻґଘؔग़ྗͷղܾͳʹͦΕɻίϯύΠϥͰ͢ɻ
CBEQSBDUJDFUPJOTUBMMEFQFOEFODJFTPOBQSPEVDUJPOTFSWFSIUUQTHJUIVCDPNHPMECFSHZPOJOPEFCFTUQSBDUJDFTJTTVFT
*EPOPUSFDPNNFOEVTJOHBOZCVOEMFSGPS/PEFIUUQTHJUIVCDPNOFTUKTOFTUJTTVFTJTTVFDPNNFOU
"1*ͳΒ࣌ؒಈ͔͞ͳ͍͍ͯ͘ͷͰʢ4FSWFSͷอकͨ͘͠ͳ͍ʂʣ
ৗʹΞΫηε͕͋ΔͱݶΒͳ͍load() {if (this.data) {return of(this.data);} else {return this.http.get(‘https://example.com‘) .pipe(map(this.processData, this));}}ϝϞϦετϨʔδΛ׆༻ͨ͠ΓFϥʔχϯάΈ͍ͨʹසൟͳ"1*ߋ৽͕ͳ͍
ͦ͏ͩʂ-BNCEBͩʂʂʮίʔυͷอकͰखҰഋ͔ͩΒαʔόͷอकͨ͘͠ͳ͍ʯ
/PEPDTGSPNʜͭ͘Εͦ͏͡Όͳ͍ʁ
ͭ͘Εͨɻࠓ.FFUVQ͋Δ͔ΒͿΓʹόʔδϣϯਵͨ͠
͍ํ$ npm install serverless -g$ git clone [email protected]:rdlabo/serverless-nestjs.git ʲprojectNameʳΠϯετʔϧ։ൃ$ npm start-BNCEB)PUTUBSUαϙʔτ4XBHHFSαϙʔτ$ npx ts-node src/swagger.ts
ϑϩϯτΤϯυͱόοΫΤϯυͰڞ௨ݴޠΛखʹೖΕΑ͏ɻϩδΧϧʹָͰ͖Δ/FTU+4͍͍Ͱ͢Α
*POJDΛ͏ͱ8FCͰϞόΠϧΞϓϦͭ͘Ε·͢ϒϥβ 18" J04ΞϓϦ
͜͏͍͏ΞϓϦ͕ʹͭ͘ΕΔΑ͏ʹʂ
*POJDͰ࡞ΔϞόΠϧΞϓϦ੍࡞ೖ୯ߦຊrϖʔδɹ ԁIUUQTBN[OUP1"S&M