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
DenoでもBunでもいいから 最速を目指す
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Yusuke Wada
September 05, 2022
Programming
3
1.7k
DenoでもBunでもいいから 最速を目指す
Yusuke Wada a.k.a yusukebe
2022/09/05 Node学園 40時限目
Yusuke Wada
September 05, 2022
Tweet
Share
More Decks by Yusuke Wada
See All by Yusuke Wada
Cap'n Webについて
yusukebe
0
180
OSS開発者の憂鬱
yusukebe
16
16k
r2-image-worker
yusukebe
1
210
Introduce Hono CLI
yusukebe
6
3.8k
私はどうやって技術力を上げたのか
yusukebe
47
21k
Reactをクライアントで使わない
yusukebe
8
6.9k
AI時代のUIはどこへ行く?
yusukebe
23
12k
速いWebフレームワークを作る
yusukebe
5
1.9k
Honoアップデート 2025年夏
yusukebe
1
1.1k
Other Decks in Programming
See All in Programming
今こそ知るべき耐量子計算機暗号(PQC)入門 / PQC: What You Need to Know Now
mackey0225
3
360
Pythonではじめるオープンデータ分析〜書籍の紹介と書籍で紹介しきれなかった事例の紹介〜
welliving
3
870
OCaml 5でモダンな並列プログラミングを Enjoyしよう!
haochenx
0
110
0→1 フロントエンド開発 Tips🚀 #レバテックMeetup
bengo4com
0
540
AI前提で考えるiOSアプリのモダナイズ設計
yuukiw00w
0
220
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
180
AIによるイベントストーミング図からのコード生成 / AI-powered code generation from Event Storming diagrams
nrslib
2
1.8k
フロントエンド開発の勘所 -複数事業を経験して見えた判断軸の違い-
heimusu
7
2.7k
AI 駆動開発ライフサイクル(AI-DLC):ソフトウェアエンジニアリングの再構築 / AI-DLC Introduction
kanamasa
11
6.3k
QAフローを最適化し、品質水準を満たしながらリリースまでの期間を最短化する #RSGT2026
shibayu36
2
4.2k
CSC307 Lecture 09
javiergs
PRO
1
810
余白を設計しフロントエンド開発を 加速させる
tsukuha
7
2.1k
Featured
See All Featured
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
220
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2k
4 Signs Your Business is Dying
shpigford
187
22k
Chasing Engaging Ingredients in Design
codingconduct
0
110
Marketing to machines
jonoalderson
1
4.6k
Speed Design
sergeychernyshev
33
1.5k
GraphQLの誤解/rethinking-graphql
sonatard
74
11k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
160
Paper Plane
katiecoart
PRO
0
46k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
70
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
310
Transcript
%FOPͰ#VOͰ͍͍͔Β ࠷Λࢦ͢ :VTVLF8BEBBLBZVTVLFCF /PEFֶԂ࣌ݶ
ࣗݾհ w :VTVLF8BEBBLBZVTVLFCF w ϘέͯDPGPVOEFS w :"1$"TJBϕεττʔΫड w גࣜձࣾτϥϕϧϒοΫ
εʔύʔόΠβʔ w UXJUUFSDPNZVTVLFCF w HJUIVCDPNZVTVLFCF /PEFֶԂॳࢀՃͰ͢
)POPͱ͍͏ϑϨʔϜϫʔΫΛ͍ͭͬͯ͘·͢ w 8FCϑϨʔϜϫʔΫɾϧʔλʔ w 8FC4UBOEBSE'FUDIͷ"1*ͷΈΛ༻ w ϚϧνϓϥοτϑΥʔϜ w $MPVE fl
BSF8PSLFSTɺ'BTUMZ$PNQVUF!&EHFɺ%FOPɺ#VO w ϛυϧΣΞͰػೳՃ w 5SJF3PVUFS EFGBVMU ͱ3FH&YQ3PVUFSͷͭͷϧʔλʔ͕͋Δ IUUQTIPOPKTEFW
)POPͷͭͷϧʔλʔ w 5SJF3PVUFS w 3FH&YQ3PVUFSCZ!VTVBMPNB w +4ͷΣϒϑϨʔϜϫʔΫͰߴͳϧʔλʔΛ࣮͢Δํ๏ 4QFBLFS%FDL w IUUQTTQFBLFSEFDLDPNVTVBMPNBVMUSBGBTUKTSPVUFS
6MUSBGBTU ͱʹ͔͍͘ϑϨʔϜϫʔΫΛࢦ͍ͯ͠Δ
%FOPɺ#VO w #VO w #VOJTBGBTUBMMJOPOF+BWB4DSJQUSVOUJNF IUUQTCVOTI w %FOP w
0VSHPBMJTUPNBLF%FOPUIFGBTUFTU+BWB4DSJQUSVOUJNF IUUQTEFOPDPNCMPHDIBOHFT )POPͲͪΒͰಈ͘ͷͰ %FOPͰ#VOͰͲ͜Ͱಈ͔͍͍͔ͯ͠Β Ұ൪͍ϑϨʔϜϫʔΫΛࢦͯ͠ΈΑ͏
8FCϑϨʔϜϫʔΫ͕͍ͱʁ
͍͍ͩͨ͜ͷͭΛଌΔ w )FMMP8PSME w ϧʔςΟϯά w 3FRVFTU3FTQPOTFͷॲཧ EFMWFEPSSPVUFSCFODINBSL 4BMUZ"PNCVOIUUQGSBNFXPSLCFODINBSL
طଘϕϯνϚʔΫPSΦϦδφϧ ͰଌͬͯΈΑ͏ .BD#PPL1SP.DPSF(#
%FOPɺ#VOͷલʹ/PEF
/PEFϧʔλʔฤ w EFMWFEPSSPVUFSCFODINBSL#FODINBSLPGUIFNPTUDPNNPOMZ VTFEIUUQSPVUFST IUUQTHJUIVCDPNEFMWFEPSSPVUFSCFODINBSL w /PEFͷओཁʮϧʔλʔʯͷϕϯνϚʔΫ w &YQSFTT
w LPBSPVUFS w LPBUSFFSPVUFS w fi OENZXBZ'BTUJGZͰΘΕ͍ͯΔ w USFLSPVUFS w FUD )POPͷݸΛ͋Θͤͯݸͷϧʔλʔ
Γํ ϧʔςΟϯάఆٛ ୟ͖ํ ͋͘·ͰϧʔςΟϯά 3FR3FTͷϋϯυϦϯά͠ͳ͍
݁Ռͦͷ Ґ Ґ
݁Ռ্Ґ Ґ Ґ Ґ
)POP Ґ Ґ ˎͪͳΈʹ)POPͷϧʔλʔෳͷϋϯυϥʹରԠͤͨ͞Γ ϓϥΠΦϦςΟ͕ෳࡶͩͬͨΓ͢Δ
ͪͳΈʹ#VOͩͱ
)POP3FH&YQ3PVUFS͕উͭ #VOͷਖ਼نදݱ͕͍ /PEFΑΓ͘ͳͬͯΔͷ ͳʹ͔ཧ༝͕͋Δͷ͔ͳ͍ͷ͔
͍Α͍Α%FOP
%FOP)FMMP8PSMEฤ w EFOPTBVSTCFODI📊$PNQBSJOHEFOPOPEF)551 GSBNFXPSLT IUUQTHJUIVCDPNEFOPTBVSTCFODI w %FOPɺ/PEFͷϑϨʔϜϫʔΫΛܭଌ ૉͷ#VO w
)FMMP8PSMEΛBVUPDBOOPOͰଌΔ w (JU)VC"DUJPOTͰճɺ݁Ռ͕3&"%.&ʹͳΔ
݁Ռ ϑϨʔϜϫʔΫͷதͰҰ൪͍ #VOׂ͕ͱ͍ʁ
+BSSFEొ IUUQTHJUIVCDPNEFOPTBVSTCFODIJTTVFT
BVUPDBOOPO͍͔ΒPIB͑ ࠷ۙ#PNCBEJFS͕͓ؾʹೖΓΒ͍͠
Ͱɺ࣮ʜ
%FOPϕϯνϚʔΫ w ࣮)POP%FOPެࣜϕϯνϚʔΫͰΘΕ͍ͯΔ w IUUQTEFOPMBOECFODINBSLT
None
%FOP fl BTI w %FOPΑΓ࣮ݧతʹಋೖ͞Εͨ)551TFSWFS"1* YJNQSPWFNFOUDPNQBSFEUPPVSFYJTUJOHXFCTFSWFS
w ͔֬ʹ%FOP fl BTI#VOΑΓ͍ w ͨͩ͠ɺ͜͜ͰΘΕ͍ͯΔ#VOͷ όʔδϣϯݹ͍ʢͣʣ
%JWZ͘Μ͕%FOP fl BTIͷϕϯνʹ)POPΛͬͯ͘Εͨ HJUIVCDPNEFOPMBOEEFOPQVMM
+BSSFEݱΔ IUUQTHJUIVCDPNEFOPMBOEEFOPQVMMJTTVFDPNNFOU
Ͱ#VOฤ
#VO)551ϑϨʔϜϫʔΫϕϯν w 4BMUZ"PNCVOIUUQGSBNFXPSLCFODINBSL$PNQBSFUISPVHIQVU CFODINBSLGSPNWBSJPVT#VO)551GSBNFXPSL IUUQTHJUIVCDPN4BMUZ"PNCVOIUUQGSBNFXPSLCFODINBSL
(FU 1BSBNT RVFSZIFBEFS 1PTU+40/
#VO ,JOH8PSMEͬ Ͱ1PTU+40/ͦΜͳͰͳ͍ʁ
1PTU+40/ w BXBJUBTZODΛ͏ͱ,JOH8PSMEͷύϑΥʔϚϯεམͪΔ w (&5 ͳͲಉظత w )POP ࣌
શͯͷϋϯυϥͰBXBJU͢Δॲཧ͕ೖ͍ͬͯͨ BTZODϋϯυϥͷαϙʔτ BXBJU͢Δॲཧ͕શϋϯυϥʹରͯ͠ߦΘΕ͍ͯͨ 1PTU+40/
BXBJUΛ͏ͱ͍ IUUQTHJUIVCDPNPWFOTICVOJTTVFT
+BSSFEొ IUUQTHJUIVCDPNPWFOTICVOJTTVFTJTTVFDPNNFOU 5IFSFJTTUJMMNPSFXPSLUPCFEPOF UPSFEVDF#VOTQSPNJTFBXBJUPWFSIFBE
WͰվળ ͨͩ͠ ˎ5IFNPSFHFOFSBMDBTFPGBTZODBXBJUQFSGPSNBODFCFJOHXPSTFJO+4$UIBO7JTTUJMMBOJTTVF
#VODBOBSZ ݈ಆͯ͠Δ
+BSSFEͷΞυόΠε ˎW͕ग़ΔલͰ͕͢ʜ
ϋϯυϥ͕Ұͭͷ߹DPNQPTF͠ͳ͍Α͏ʹͨ͠ IUUQTHJUIVCDPNIPOPKTIPOPQVMM
ABXBJUAΛগͳͨ͘͠ IUUQTHJUIVCDPNIPOPKTIPOPQVMM
#VOWDBOBSZ )POP "dependencies": { "@kapson fi re/bun-bakery": "^0.3.2", "@nbit/bun":
"^0.7.0", "baojs": "^0.1.3", "bunrest": "^1.1.0", "colstonjs": "latest", "express": "^4.18.1", "hyperbun": "^0.4.6", "kingworld": "^0.0.0-experimental.24" } )POP͍ͧ
࠷৽൛ #VOWDBOBSZ )POPIUUQTHJUIVCDPNIPOPKTIPOPUSFF FCFCDDGEDGCC "dependencies": { "@kapson fi re/bun-bakery": "^0.3.2",
"express": "^4.18.1", "fastify": "^4.5.3", "hyperbun": "^0.4.6", "kingworld": "^0.0.0-experimental.24" },
࠷৽ͷ݁Ռ IUUQTHJUIVCDPNZVTVLFCFXFCGSBNFXPSLCFODI
ͱ͍͏͜ͱͰ%FOPͰ#VOͰ ϑϨʔϜϫʔΫͷதͰ ˚Ұ൪͍ ⦿ҰೋΛ૪͏
͍ͬͨΜײ w ύϑΥʔϚϯεΛͱΔ͔ϝϯςφϏϦςΟΛͱΔ͔ʁ w 6MUSBGBTUΛΞΠσϯςΟςΟʹͯ͠ΔͷͰͳΔ͘͘ w ػೳ͋ΔͷͰ࠷େม w ϕϯνϚʔΫʮͳ·ͷʯ w
ϕϯνϚʔΫ͍͠ w ڥɺϥϯλΠϜͷ࣮ w #VOͷϨεϙϯεϔομʹA%BUFAϔομ͕ͳ͍FUD w ఢΛ࡞ΔՄೳੑ͕͋Δ
%FOP্ͱ#VO্ͳΒͲͪΒ͕͍ͷ͔ʁ %FOP fl BTI͍ #VO৽͍͠)POPͩͱ͍
ࡢڭ͑ͯΒͬͨϕϯνϚʔΫαΠτ IUUQTEFOPWTCVO fl ZEFW %FOP fl BTIͬͯͳ͍
#VOͰ੩తϑΝΠϧͷαʔϒΛ࠷దԽ͠Α ͏ͱ͍ͯ͠Δ
#VOͬͱ͘ͳΔ
ͪͳΈʹ%&-&5&͚ͩ3FRVFTUͷத ͕ۭʹͳΔόά͕͋Δ IUUQTHJUIVCDPNPWFOTICVOJTTVFT IUUQTHJUIVCDPNIPOPKTIPOPJTTVFT
%FOP
·ͩ͘ͳΔ
63-͕͍
͏*TTVFʹͳͬͯͨ IUUQTHJUIVCDPNEFOPMBOEEFOPJTTVFT
63-͡Όͳͯ͘ 63-4FBSDI1BSBNT͚ͩͰΑ͘ͳ͍ʁ
DSFRRVFSZͷߴԽ IUUQTHJUIVCDPNIPOPKTIPOPQVMM
Ҏ্ύϑΥʔϚϯε্͕ͬͨ IUUQTHJTUHJUIVCDPNZVTVLFCFGFEGEFFDEGE
ߴԽͱϕϯνϚʔΫ ଓ͍͍ͯ͘ʜ