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とUXの話 〜 startTransition を添えて 〜
Search
yuuki-katsuta
May 09, 2025
Programming
0
25
ReactとUXの話 〜 startTransition を添えて 〜
Netadashi Meetup #12 の登壇資料です。
yuuki-katsuta
May 09, 2025
Tweet
Share
More Decks by yuuki-katsuta
See All by yuuki-katsuta
JavaScript AST入門 〜自作Babelプラグインを添えて〜
sakiika
1
11
Other Decks in Programming
See All in Programming
AIに安心して任せるためにTypeScriptで一意な型を作ろう
arfes0e2b3c
0
280
AIコーディングエージェント全社導入とセキュリティ対策
hikaruegashira
15
8.6k
知って得する@cloudflare_vite-pluginのあれこれ
chimame
1
120
コーディングエージェント概観(2025/07)
itsuki_t88
0
450
NEWT Backend Evolution
xpromx
1
170
React は次の10年を生き残れるか:3つのトレンドから考える
oukayuka
40
15k
Strands Agents で実現する名刺解析アーキテクチャ
omiya0555
1
110
ご注文の差分はこちらですか? 〜 AWS CDK のいろいろな差分検出と安全なデプロイ
konokenj
4
720
変化を楽しむエンジニアリング ~ いままでとこれから ~
murajun1978
0
580
GPUを計算資源として使おう!
primenumber
1
300
Quality Gates in the Age of Agentic Coding
helmedeiros
PRO
1
110
可変性を制する設計: 構造と振る舞いから考える概念モデリングとその実装
a_suenami
8
1k
Featured
See All Featured
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
400
RailsConf 2023
tenderlove
30
1.2k
Done Done
chrislema
185
16k
A better future with KSS
kneath
238
17k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Gamification - CAS2011
davidbonilla
81
5.4k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Documentation Writing (for coders)
carmenintech
72
4.9k
Transcript
3FBDUͱ69ͷ ʙTUBSU5SBOTJUJPOΛఴ͑ͯʙ উా༤ᏻc /FUBEBTIJ.FFUVQ
ɾ5BHCBOHFST *OD ɾओʹϑϩϯτΤϯυͷ։ൃʢ͘Β͍ʣ ɾొஃॳΊͯ উా༤ᏻ!ZVVLJLBUTVUB ࣗݾհ
͡Ίʹ ςʔϚ ɾ3FBDUͷฒྻϨϯμϦϯά͕ͨΒ͢69ͷਐԽ ɾ6*ߋ৽ͷཪΛ͍ͯΈΑ͏
69ʢϢʔβʔମݧʣΛୈҰʹ IUUQTMFHBDZSFBDUKTPSHCMPHCVJMEJOHHSFBUVTFSFYQFSJFODFTXJUIDPODVSSFOUNPEFBOETVTQFOTFIUNMQVUUJOHVTFS FYQFSJFODF fi STU %FWFMPQFS&YQFSJFODFˠ6TFS&YQFSJFODF
4ZODISPOPVT3FOEFSJOH Event Event Event User Interaction Main thread ʢ#MPDLFEʣ
ʢ#MPDLFEʣ
$PODVSSFOU3FOEFSJOH User Interaction Event Event ʢ/PO#MPDLJOHʣʢ/PO#MPDLJOHʣ
$PODVSSFOU3FOEFSJOH ɾ3FBDUͷ৽͍͠ϨϯμϦϯάػߏ ɾϨϯμϦϯάϓϩηεΛதஅՄೳͳ࡞ۀ୯Ґʹׂ ɹɹˠதஅɾ࠶ձɾഁغ͕Մೳʹ ɹɹˠϨϯμϦϯάϓϩηεʹ༏ઌͷ֓೦ ˞ϨϯμϦϯάˠԾ%0.πϦʔͷߏங
෮शʙTUBSU5SBOTJUJPOͱʙ TUBSU5SBOTJUJPOؔΛ༻ͯ͠ঢ়ଶͷߋ৽Λ ʮ༏ઌͷεςʔτߋ৽ʯͱͯ͠3FBDUʹ͑Δ ͜ͷߋ৽ۓٸͰͳ͍ͨΊɺॲཧ͖͢ۓٸͷλεΫ͕͋Δ߹தஅͰ͖Δ
TUBSU5SBOTJUJPOͷྫ ೖྗϑΥʔϜ user input Rendering ༏ઌߴ ༏ઌ Ϣʔβͷೖྗʹର͢ΔมԽˠ༏ઌߴ ϢʔβͷೖྗʹΑΔϦετͷϨϯμʔˠ༏ઌ
͏Ұͭͷੈք ʮCSBODIϞσϧʯʮผͷੈքʯͱ͍͏දݱ ˠVTF5SBOTJUJPO͕ͲͷΑ͏ʹػೳ͢Δ͔Λཧղ͢ΔͨΊͷൺᄻදݱ ެࣜυΩϡϝϯτΑΓ IUUQTSFBDUKTPSHEPDTDPODVSSFOUNPEFQBUUFSOTIUNM
CSBODIϞσϧͰߟ͑ͯΈΔ ༏ઌͷ3FOEFS ˠߴ༏ઌͷϨϯμϦϯά͕ऴྃͨ͠ޙʹͷΈ࣮ߦ։࢝ ˠߴ༏ઌͷλεΫͷߋ৽ʹΑͬͯதஅ͞ΕΔ Main thread transition thread ʢ༏ઌͷRenderʣ
1 2 3 4 5 %0.ө %0.ө %0.ө ʢϑΥʔϜೖྗ
CSBODIϞσϧͰߟ͑ͯΈΔ ߴ༏ઌͷλεΫͷߋ৽ʹΑͬͯதஅ͞ΕΔ ˠߴ༏ઌͷλεΫᶅ͕ൃੜ ˠ༏ઌͷλεΫᶄͷϨϯμϦϯά͕தஅ Main thread transition thread ʢ༏ઌͷRenderʣ
1 2 3 4 5 %0.ө %0.ө %0.ө ʢϑΥʔϜೖྗ
·ͱΊ ɾ3FBDU͓͠Ζ͍ʂ ɹ͜ͷΈΛ׆༻ͯ͠ɺϓϩμΫτΛΑΓྑ͍ͷʹ͍ͨ͠Ͷ ɾৄࡉͳΈΛͬͱΓͨ͘ͳͬͨ ɹ'JCFS3FDPODJMFS3FDPODJMJBUJPOʜ
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂʂ