$30 off During Our Annual Pro Sale. View Details »
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
110
Prismaを1年くらい使ってみたのでちょっと語る
tsukasagr
0
140
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
Replit Agent
kawaguti
PRO
2
190
プロダクトの爆速開発を支える、 「作らない・削る・尖らせる」技術
applism118
10
8.5k
コーポレートデータマスター構築への道
kworkdev
PRO
0
130
How is Cilium Tested?
yutarohayakawa
5
300
深層学習のリペア技術の最新動向と実際 / DNN Repair Techniques for AI Performance Alignment for Safety Requirements
ishikawafyu
0
480
Ruby on Browser - RubyWorld Conference 2024
tmtms
1
110
Classmethod_regrowth_2024_tokyo_security_identity_governance_summary
hiashisan
0
460
PostgreSQL Conference Japan 2024 A4 Comparison of column-oriented access methods
nori_shinoda
0
150
職能を超えたモブプログラミングが品質に与えた良い影響
tonionagauzzi
1
170
まだチケットを手動で書いてるの?!GitHub Actionsと生成AIでチケットの作成を自動化してみた話 / 20241207 Yoshinori Katayama
shift_evolve
1
770
GeminiとUnityで実現するインタラクティブアート
hokkey621
0
620
論理レプリケーションを使ったDB統合
kkato1
0
310
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
44
13k
RailsConf 2023
tenderlove
29
920
How STYLIGHT went responsive
nonsquared
95
5.2k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
32
2.7k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
480
4 Signs Your Business is Dying
shpigford
181
21k
Unsuck your backbone
ammeep
669
57k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
Visualization
eitanlees
145
15k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
111
49k
Adopting Sorbet at Scale
ufuk
73
9.1k
A Philosophy of Restraint
colly
203
16k
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
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠