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
NestJSがいい感じだった
Search
TsukasaSekiguchi
October 31, 2020
Technology
0
290
NestJSがいい感じだった
Gunmaweb#39のLT資料です。
なんとなく興味のあったNestJSを軽く触ってみてやっぱりいいなってなったのでいくつかのポイントをまとめています。
TsukasaSekiguchi
October 31, 2020
Tweet
Share
More Decks by TsukasaSekiguchi
See All by TsukasaSekiguchi
v0とCursorで爆速開発🚀
tsukasagr
0
120
Prismaを1年くらい使ってみたのでちょっと語る
tsukasagr
0
150
playwrightのVSCode拡張が便利すぎて、もはやE2E書けないとか言い訳できないレベルだった
tsukasagr
0
160
AWS_Copilotではじめる簡単コンテナ運用.pdf
tsukasagr
0
350
SupabaseにBaaS拡大の未来を感じた
tsukasagr
0
230
超ざっくりFirebase vs Amplify
tsukasagr
0
290
Slack Apps × BoltでToDoアプリ作ってみたって話のはずだったけど、周辺技術で良さそうなやつがあったのでそのへんも共有する話
tsukasagr
0
430
俺のMac
tsukasagr
0
300
可能な限りRDB脳のままCloud_Firestoreを使ってみる.pdf
tsukasagr
0
640
Other Decks in Technology
See All in Technology
統計データで2024年の クラウド・インフラ動向を眺める
ysknsid25
2
840
祝!Iceberg祭開幕!re:Invent 2024データレイク関連アップデート10分総ざらい
kniino
2
260
サイボウズフロントエンドエキスパートチームについて / FrontendExpert Team
cybozuinsideout
PRO
5
38k
Wantedly での Datadog 活用事例
bgpat
1
440
Amazon Kendra GenAI Index 登場でどう変わる? 評価から学ぶ最適なRAG構成
naoki_0531
0
110
新機能VPCリソースエンドポイント機能検証から得られた考察
duelist2020jp
0
220
ゼロから創る横断SREチーム 挑戦と進化の軌跡
rvirus0817
2
270
終了の危機にあった15年続くWebサービスを全力で存続させる - phpcon2024
yositosi
3
3k
開発生産性向上! 育成を「改善」と捉えるエンジニア育成戦略
shoota
2
330
AWS re:Invent 2024 ふりかえり
kongmingstrap
0
130
AWS re:Invent 2024で発表された コードを書く開発者向け機能について
maruto
0
190
Jetpack Composeで始めるServer Cache State
ogaclejapan
2
170
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
243
12k
Docker and Python
trallard
42
3.1k
Why Our Code Smells
bkeepers
PRO
335
57k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
247
1.3M
Code Reviewing Like a Champion
maltzj
520
39k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
170
Statistics for Hackers
jakevdp
796
220k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
95
17k
Six Lessons from altMBA
skipperchong
27
3.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
Practical Orchestrator
shlominoach
186
10k
Rails Girls Zürich Keynote
gr2m
94
13k
Transcript
/FTU+4͕͍͍ײͩͬͨ͡ 2020/10/31 Gunma.web #39 ؔޱ ࢘
ࣗݾհ ໊લ: ؔޱ࢘ SNS: GitHub: TsukasaGR Twitter: TsukasaGr NewsPicks: ؔޱ࢘
࠲ӈͷ ࣗͷͨΊʹɺଞਓʹਚ͘͢ ࣄ: αϥϦʔϚϯ: SIerͰडୗ։ൃ ϑϦʔϥϯε: ελʔτΞοϓͷWebΤϯδχΞ ࠷ۙ৮ͬͯΔͷ: Javascript/Typescript(Vue.js/Nuxt.js/NestJS/React)ɺCordova
/FTU+4ͱʁ
/PEFKTͷ͍͍ײ͡ͷϑϨʔϜϫʔΫ w /PEFKT൛ͷ-BSBWFM3BJMTΈ͍ͨͳϑϧελοΫ'8 w 5ZQF4DSJQU w "OHVMBSΛΠϯεύΠΞͯͭ͘͠ΒΕͨͷ w ͪ͜ΒͷεϥΠυʹ͔ͬ͠Γॻ͔Ε͍ͯ·͢ https://speakerdeck.com/potato4d/what-is-nestjs-number-nestjs-meetup
/PEFKT'8ͷݱঢ়
ѹతFYQSFTTҰڧ
ͨͩ͠/FTU+4͕৳ͼ͖ͯͯΔ
FYQSFTT͡Όμϝͳͷʁ
FYQSFTTͷϓϩίϯ w 1SPT w ࠷ݶͷػೳ͚ͩͳͷͰ͍ܰ w αʔόʔϨεͰݺͼग़͢߹ͳΜ͔ศར w $POT w
࠷ݶͷػೳ͚ͩͰແ๏ଳͳͷͰɺͪΐͬͱෳࡶͳ͜ͱΖ ͏ͱ͢ΔͱͲΜͳॻ͖ํͰͰ͖ͯ͠·͏ w શ෦ࣗͰॻ͔ͳ͍ͱ͍͚ͳ͍ '8ΛͬͯΔײ͕͋͡·Γͳ ͍
FYQSFTTͷ͍Ͳ͜Ζ w (PPE w ΤϯυϙΠϯτ͕͔ͭ͠ͳ͍"1* σϞ༻ͱ͔ w αʔόʔϨεͷόοΫΤϯυ ىಈ͕͍ܰͷͰ
w #BE w ΰϦΰϦʹ࣮͕ඞཁͳ"1* w ෳਓͰ։ൃ ͋Δఔ੍͕΄͍͠ͷͰ
FYQSFTTͷ͍Ͳ͜Ζ w (PPE w ΤϯυϙΠϯτ͕͔ͭ͠ͳ͍"1* σϞ༻ͱ͔ w αʔόʔϨεͰར༻ ىಈ͕͍ܰͷͰ
w #BE w ΰϦΰϦʹ࣮͕ඞཁͳ"1* w ෳਓͰ։ൃ ͋Δఔ੍͕΄͍͠ͷͰ ࠓ·Ͱͷ/PEFKT͕͜͜ऑ͔ͬͨ
FYQSFTTͷ͍Ͳ͜Ζ w (PPE w ΤϯυϙΠϯτ͕͔ͭ͠ͳ͍"1* σϞ༻ͱ͔ w αʔόʔϨεͰར༻ ىಈ͕͍ܰͷͰ
w #BE w ෳͷΤϯυϙΠϯτΛ࣋ͭ"1* ΄ͱΜͲͦ͏ͩΑͶ w ෳਓͰ։ൃ ͋Δఔ੍͕΄͍͠ͷͰ ࠓ·Ͱͷ/PEFKT͕͜͜ऑ͔ͬͨ /FTU+4͕ͯ͢ղܾͯ͘͠ΕΔʂ
/FTU+4ͷ͍͍ײ͡ͳ ͱ͜Ζ ˞ͨ͘͞Μ͋ΔͷͰҰ෦͚ͩ
%*ίϯςφ͕͍͍ײ͡ w େ͖ͳొਓ.PEVMFT$POUSPMMFST4FSWJDFT 㲈1SPWJEFST w .PEVMFͰґଘؔΛ·ͱΊɺඞཁͳ.PEVMFΛݺͼग़͢ w ٯʹ.PEVMFʹͳ͍ͷΛݺͼग़ͤͳ͍ (MPCBMʹ͢Εผ
%*ίϯςφ͕͍͍ײ͡ 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Ϟδϡʔϧ
%*ίϯςφ͕͍͍ײ͡ w ґଘੑͷೖίϯετϥΫλͰఆٛͰ͖Δ w ্ॻ͖Ͱ͖ΔͷͰ͓࡞๏ʹଇͬͯॻ͚ͩ͘Ͱࣗવͱςελϒϧ ʹͳΔ
%*ίϯςφ͕͍͍ײ͡ w ґଘੑͷೖίϯετϥΫλͰఆٛͰ͖Δ w ্ॻ͖Ͱ͖ΔͷͰ͓࡞๏ʹଇͬͯॻ͚ͩ͘Ͱࣗવͱςελϒϧ ʹͳΔ 6TFS$POUSPMMFS 6TFS$POUSPMMFSͰ zUIJTVTFS4FSWJDFzͱͯ͠ѻ͑Δ σϑΥϧτͰ6TFS4FSWJDFΛೖ͍ͯ͠Δ͕ɺ
ςετ࣌ͷΈϞοΫʹ͢Γସ࣮͑ͯߦ͢Δ͜ͱ͕ Ͱ͖Δ ςετ
ϧʔςΟϯά͕͍͍ײ͡ w Ξϊςʔγϣϯ σίϨʔλ ͰϧʔςΟϯάΛઃఆͰ͖Δ w ϑΝΠϧΛ։͘ͱ͙͢ʹύε͕Θ͔ΔͷͰՄಡੑ˕
ϧʔςΟϯά͕͍͍ײ͡ w Ξϊςʔγϣϯ σίϨʔλ ͰϧʔςΟϯάΛઃఆͰ͖Δ w ϑΝΠϧΛ։͘ͱ͙͢ʹύε͕Θ͔ΔͷͰՄಡੑ˕ VTFSTΛࢦఆ͍ͯ͠ΔͷͰɺ͜ͷ $POUSPMMFSͷύε IUUQTYYYDPNVTFSTYYY
ʹͳΔ IUUQTYYYDPNVTFST IUUQTYYYDPNVTFST
ϗοτϦϩʔυ͕͍͍ײ͡ w lZBSOTUBSUEFWz͢ΕมߋΛ͙͢ʹөͰ͖Δ w ϑϩϯτͷؾ࣋ͪΑ͞Λ"1*࣮ͰମײͰ͖Δ
ϗοτϦϩʔυ͕͍͍ײ͡ w lZBSOTUBSUEFWz͢ΕมߋΛ͙͢ʹөͰ͖Δ w ϑϩϯτͷؾ࣋ͪΑ͞Λ"1*࣮ͰମײͰ͖Δ
ϚΠάϨʔγϣϯ͕͍͍ײ͡ w &OUJUZσίϨʔλΛॻ͍ͨϑΝΠϧΛ༻ҙ͓͚ͯͩ͘͠ w ͋ͱzZBSOTUBSUEFWz͢ΕࣗಈͰ%#ʹө͞ΕΔ w ࣗಈखಈସઃఆͰมߋͰ͖Δ
ϚΠάϨʔγϣϯ͕͍͍ײ͡ w &OUJUZσίϨʔλΛॻ͍ͨϑΝΠϧΛ༻ҙ͓͚ͯͩ͘͠ w ͪΖΜVQEPXOͷΑ͏ͳϚΠάϨʔγϣϯֻ͚Δ w ͋ͱzZBSOTUBSUEFWz͢ΕࣗಈͰ%#ʹө͞ΕΔ w ࣗಈखಈସઃఆͰมߋͰ͖Δ
03.͕͍͍ײ͡ w 3BJMTͰ͍͏"DUJWF3FDPSEɺ-BSBWFMͰ͍͏&MPRVFOUͷΑ͏ͳ 03.Λॻ͚Δ
03.͕͍͍ײ͡ w 3BJMTͰ͍͏"DUJWF3FDPSEɺ-BSBWFMͰ͍͏&MPRVFOUͷΑ͏ͳ 03.Λॻ͚Δ
όϦσʔγϣϯ͕͍͍ײ͡ w σίϨʔλͰόϦσʔγϣϯఆٛͰ͖Δ w ࣗ࡞όϦσʔγϣϯ࣮Ͱ͖Δ
όϦσʔγϣϯ͕͍͍ײ͡ w σίϨʔλͰόϦσʔγϣϯఆٛͰ͖Δ w ࣗ࡞όϦσʔγϣϯ࣮Ͱ͖Δ
4XBHHFS6*͕͍͍ײ͡ w l!OFTUKTTXBHHFSzͱ͍͏ެࣜύοέʔδ͕༻ҙ͞Ε͍ͯΔ w σίϨʔλΛॻ͚ͩ͘Ͱ4XBHHFS6*ʹࣗಈө͞ΕΔ
4XBHHFS6*͕͍͍ײ͡ w l!OFTUKTTXBHHFSzͱ͍͏ެࣜύοέʔδ͕༻ҙ͞Ε͍ͯΔ w σίϨʔλΛॻ͚ͩ͘Ͱ4XBHHFS6*ʹࣗಈө͞ΕΔ Ϩεϙϯεఆٛ ϓϩύςΟఆٛ ͓ͳ͡Έͷ4XBHHFS6*
ͦͷଞ͍͍ײ͡ w ೝূ w ϛυϧΣΞ w /P42- w (SBQI2- w
H31$ w ͳͲͳͲ৭ʑͳͷΛެࣜύοέʔδܦ༝Ͱར༻Ͱ͖Δ
͍͞͝ʹ
όοΫΤϯυ+4 54 ͷ͕࣌དྷ͔ͨ w αʔόʔϨεͰϥΠτͳόοΫΤϯυͰ͋ΕFYQSFTTͷར༻͕ ଟ͍͕ɺຊ֨తͳ3FTU(SBQI2-"1*Λͭ͘Ζ͏ͱ͢Δͱ(P -BSBWFM3BJMTͳͲ͕·ͩ·ͩओྲྀͳΑ͏ʹײ͍ͯ͡Δ w /FTU+4ͷొͰҰؾʹόοΫΤϯυ+4 54
ͷ͕࣌དྷΔ͔ ͠Εͳ͍ w ϑϩϯτΤϯδχΞڠྗ͍͢͠ ಛʹ"OHVMBSͩͱ ͷͰϚδ Ͱ͋Δ͔͠Εͳ͍ w ࠓճͭͬͨ͘αϯϓϧͪ͜Βʹ্͛ͯ·͢ https://github.com/TsukasaGR/nest-example
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠