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
Reactをクライアントで使わない
Search
Yusuke Wada
September 19, 2025
Programming
2
420
Reactをクライアントで使わない
2025-09-19 / React Tokyo ミートアップ #9
Yusuke Wada
September 19, 2025
Tweet
Share
More Decks by Yusuke Wada
See All by Yusuke Wada
AI時代のUIはどこへ行く?
yusukebe
18
9.2k
速いWebフレームワークを作る
yusukebe
5
1.8k
Honoアップデート 2025年夏
yusukebe
1
930
パスタの技術
yusukebe
1
590
AI Ramen Fight
yusukebe
0
160
TypeScriptでDXを上げろ! Hono編
yusukebe
4
1k
Honoをフロントエンドで使う 3つのやり方
yusukebe
8
4.9k
Honoのおもしろいミドルウェアをみてみよう
yusukebe
2
420
MCP with Cloudflare Workers
yusukebe
2
430
Other Decks in Programming
See All in Programming
@Environment(\.keyPath)那么好我不允许你们不知道! / atEnvironment keyPath is so good and you should know it!
lovee
0
130
Testing Trophyは叫ばない
toms74209200
0
900
Amazon RDS 向けに提供されている MCP Server と仕組みを調べてみた/jawsug-okayama-2025-aurora-mcp
takahashiikki
1
130
rage against annotate_predecessor
junk0612
0
170
ProxyによるWindow間RPC機構の構築
syumai
3
1.2k
さようなら Date。 ようこそTemporal! 3年間先行利用して得られた知見の共有
8beeeaaat
3
1.5k
意外と簡単!?フロントエンドでパスキー認証を実現する WebAuthn
teamlab
PRO
2
790
Introducing FrankenPHP gRPC
dunglas
1
280
Cache Me If You Can
ryunen344
2
6.1k
Performance for Conversion! 分散トレーシングでボトルネックを 特定せよ
inetand
0
5.6k
概念モデル→論理モデルで気をつけていること
sunnyone
3
310
チームのテスト力を鍛える
goyoki
3
990
Featured
See All Featured
How GitHub (no longer) Works
holman
315
140k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
590
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Fireside Chat
paigeccino
39
3.6k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
Designing for humans not robots
tammielis
253
25k
GraphQLの誤解/rethinking-graphql
sonatard
72
11k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Why Our Code Smells
bkeepers
PRO
339
57k
A better future with KSS
kneath
239
17k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.7k
Transcript
3FBDU5PLZPϛʔτΞοϓ 3FBDUΛΫϥΠΞϯτͰΘͳ͍ :VTVLF8BEB
.F w :VTVLF8BEB w 8FCGSBNFXPSLEFWFMPQFS w %FWFMPQFS"EWPDBUF!$MPVE fl BSF w
#PLFUFDPGPVOEFS w $SFBUPSPG)POP w IUUQTHJUIVCDPNZVTVLFCF The Melancholy of an OSS Developer
3FBDUͱ͍͑
8JLJQFEJB3FBDUΑΓ IUUQTKBXJLJQFEJBPSHXJLJ3FBDU
ʮΣϒϒϥβͰෳࡶͳ6*ʯ ʮϑϩϯτΤϯυʯ
ΫϥΠΞϯταΠυͰ࣮ߦ͞ΕΔ ͜ͱ͕ఆ͞Ε͍ͯΔ
None
͔͠͠ αʔόʔαΠυͰΘΕΔ͜ͱ͋Δ
None
3FBDUΛΫϥΠΞϯτͰΘͳ ͍͜ͱͰ͖Δ
ࠓͦͷͰ͢
3FBDUΛΫϥΠΞϯτͰΘͳ͍ )POP͕+49ʹΛ͚ͭͨ݅ 3FBDUΛαʔόʔαΠυͰ͏ 3FBDUͷศརͳػೳ )POPͰ3FBDUΛ͏ 3FBDU4FSWFS$PNQPOFOUTʹ͍ͭͯ৮Ε·ͤΜ
)POP͕+49ʹΛ͚ͭͨ݅
ʮ·ͣαʔόʔαΠυ+49ʹ͍ͭͯͦ͏ʯ
)POPͰςϯϓϨʔτΤϯδϯΛ͍ͬͯͨ w )5.-Λඳը͢ΔͨΊͷखஈΛఏڙ͍ͨ͠ͱࢥ͍ͬͯͨ w ςϯϓϨʔτΤϯδϯΛ͓͏ʂ w ͔͠͠ɺଟ͘ͷ+BWB4DSJQUςϯϓϨʔτΤϯδϯFWBM͕ඞཁͩͬͨΓGTʹ ґଘ͍ͯͨ͠$MPVE fl BSF8PSLFSTͰಈ͔ͳ͍
w .VTUBDIF͚ͩಈ͘
࣮ࡍʹ.VTUBDIFϛυϧΣΞ͋ͬͨ IUUQTHJUIVCDPNIPOPKTIPOPQVMM
ςϯϓϨʔτΤϯδϯͷબࢶ͕গͳ͍ w 8PSLFSTͰಈ͘͏ҰͭͷςϯϓϨʔτΤϯδϯNJDSPUFNQMBUFKTΛ͏ͱ ͕ͨ͠ʜ w ݁ہςϯϓϨʔτΤϯδϯͷબ͕গͳ͍͜ͱมΘΒͣ IUUQTHJUIVCDPNIPOPKTIPOPJTTVFT
l+49ΛͬͨΒͲ͏ͩʁz w ςϯϓϨʔτΤϯδϯͷΘΓʹ+49ͷγϯλοΫεΛͬͯ)5.-Λग़ྗ͢ Ε͍͍ͷͰʁ
+49ϛυϧΣΞ͕ಋೖ͞ΕΔ IUUQTHJUIVCDPNIPOPKTIPOPQVMM w +49ΛαʔόʔαΠυͰ࣮ߦ͠ɺ)5.-Λग़ྗ͢Δ
None
+49Λ͏͜ͱ)POPͷಛʹͳ͍ͬͯΔ 4VNNBSJ[F)BDLFS/FXTXJUI)POP $MPVE fl BSF IUUQTXXXZPVUVCFDPNXBUDI W8VP00B4HN*
αʔόʔαΠυ+49 w αʔόʔαΠυͰ+49Λ͏ͱ͍͏Ξϓϩʔν༗ޮͩʂ)POPͰূ໌͞ Εͭͭ͋Δ w Ͱ+49ͱ͍͑ɺ3FBDU+49Ͱهड़͢Δ w )POPͰඪ४ͰIPOPKTYΛ͍ͬͯΔ͕3FBDUΛ͏͜ͱͰ͖Δ w 3FBDUͳΒͰͷػೳ͋Δʢ͍͔ͭ͘IPOPKTYʹऔΓࠐ·Ε͍ͯΔʣ
ʮ3FBDUΛαʔόʔαΠυͰ͏ͷ͋Γʂʯ ͍ΘΏΔ443Ͱ͋Δ
3FBDUΛαʔόʔαΠυͰ͏
+49Λղऍͤ͞Δ w ֦ுࢠΛKTY͔UTYʹ͢Δ w UTDPO fi HKTPOΛฤू͢Δ w ͜ΕͰίϯύΠϥ͕+49Λ +BWB4DSJQUίʔυʹมͯ͠
͘ΕΔ
+49Λॻ͘ w ී௨ʹ+49Λॻ͍͍͚ͯ Α͍
ϨϯμϦϯά͢Δ w దͳϝιουΛͬͯ+49ΛϨϯμϦϯά͢Δ
ϨϯμϦϯά͢ΔͨΊͷϝιου w SFOEFS5P4USJOHGSPNASFBDUEPNTFSWFSA w +49Λ)5.-จࣈྻʹͯ͠ฦ͢ w SFOEFS5P4UBUJD.BSLVQGSPNASFBDUEPNTFSWFSA w 3FBDUݻ༗ͷଐੑ ྫEBUBSFBDUJE
Λ࡞Βͳ͍ w SFOEFS5P3FBEBCMF4USFBNGSPNASFBDUEPNTFSWFSA w +49Λ)5.-ʹͯ͠3FBECMF4USFBNͰฦ͢
3FBDUͷศརͳػೳ
%PDVNFOU.FUBEBUB w UJUMFNFUBMJOL͕IFBEʹࣗಈతʹঢ֨͢Δ w ϝλσʔλͷר্͖͛ w ಠࣗͰϝλσʔλΛηοτ͢ΔͨΊͷϩδοΫΛ࡞͍͚ͬͯͨͲɺ͜Εศརʂ
None
None
3FTPVSDF-PBEJOH w ίϯϙʔωϯτͰϦιʔεώϯτQSFMPBEQSFJOJUQSFDPOOFDUΛએݴ Ͱ͖ΔIFBEʹग़ྗ͞ΕΔ
None
None
JNHλάͷTSD͕ࣗಈతʹQSFMPBE͞ΕΔ݅ w ίϯϙʔωϯτͷJNHλάͷը૾͕ࣗಈతʹQSFMPBE͞ΕΔ
༧ظͯ͠ͳ͍ڍಈͳͷ͔ʁ IUUQTHJUIVCDPNGBDFCPPLSFBDUJTTVFT ͪͳΈʹMPBEJOHMB[ZΛՃ͢ΔͱແޮԽ͞ΕΔ
4USFBNJOH 4VTQFOTF w SFOEFS5P3FBECMF4SFBNΛ͑ετϦʔϜΛฦ͢͜ͱ͕Ͱ͖Δ w 4VTQFOTF͕αʔόʔαΠυͷ࣮͚ͩͰ͑Δ w ·ͣGBMMCBDLΛදࣔ४උ͕Ͱ͖ͨΒίϯϙʔωϯτΛදࣔ w ΫϥΠΞϯτͷ+4ͳ͠ͰʮͪͷؒͷϩʔσΟϯά6*ʯʮຊͷ༰ʯ
࣌ؒࠩͰදࣔ͞ΕΔίϯϙʔωϯτ
None
3FBDUͷΤίγεςϜΛ͑Δ w ྫ-VDJEF3FBDU
None
)POPͰ3FBDUΛ͏
)POPͰ3FBDUΛ͏ w +49Λॻ͍ͯϨϯμϦϯάͤͯ͞దʹϨεϙϯεΛฦ͍͍ͤ SFOEFS5P4USJOH SFOEFS5P4UBUJD.BSLVQ SFOEFS5P3FBCMF4USFBN
)POPͷ3FOEFSFS w DSFOEFSͰͨ͠ΛͲ͏͢Δ͔ʁΛࢦఆ͓ͯ͘͜͠ͱ͕Ͱ͖Δ w ྫ+49ͷϨΠΞτɺΧελϜ+40/Τϯίʔμʔ
3FBDU3FOEFSFS.JEEMFXBSF w !IPOPSFBDUSFOEFSFS w DSFOEFSϝιουͰ࣮ߦͰ͖Δ3FBDUϕʔεͷϨϯμϥʔΛ؆୯ʹͭ͘ΕΔ
None
WJUFTTSDPNQPOFOUT w 3FBDUͱIPOPKTYΛαʔόʔαΠυͰͬͯ7JUFͰ։ൃ͢Δ࣌ʹศརͳίϯ ϙʔωϯτ w 7JUF$MJFOU7JUFͷΫϥΠΞϯτεΫϦϓτΛૠೖϗοτϦϩʔυ w 4DSJQU-JOLΞηοτͷύεղܾΛࣗಈతʹͯ͘͠ΕΔ Ϗϧυؚ࣌ Ή
None
Ҏ্ɺͭհ͖ͯ͠·ͨ͠
͓·͚
͘͠IPOPKTYΛ͏ w AIPOPA͚ͩͰ͑Δ w 3FBDUޓͷ"1*Λ͍͔͍ͭ࣋ͬͯ͘Δ w %PDVNFOU.FUBEBUB w 4USFBNJOH4VTQFOTF w
!IPOPSFBDUDPNQBU w IPOPKTYΛ͍ͭͭɺ3FBDUґଘͷϥΠϒϥϦΛ͑Δ
·ͱΊ
3FBDUΛΫϥΠΞϯτͰΘͳ͍ w )POP͕+49ʹΛ͚ͭͨ݅ w 3FBDUΛαʔόʔαΠυͰ͏ w αʔόʔαΠυͰศརͳػೳ w )POPͰ3FBDUΛ͏
3FBDUΫϥΠΞϯτ͚ͩͷͷͰͳ͍ʂ ͱ͍͏͜ͱΛͬͯΒ͑ͨΒΑ͔ͬͨͰ͢
͋Γ͕ͱ͏͍͟͝·ͨ͠