Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ReactとUXの話 〜 startTransition を添えて 〜
Search
yuuki-katsuta
May 09, 2025
Programming
1
43
ReactとUXの話 〜 startTransition を添えて 〜
Netadashi Meetup #12 の登壇資料です。
yuuki-katsuta
May 09, 2025
Tweet
Share
More Decks by yuuki-katsuta
See All by yuuki-katsuta
Viteプラグインで学ぶビルドツールの裏側
sakiika
1
29
JavaScript AST入門 〜自作Babelプラグインを添えて〜
sakiika
2
25
Other Decks in Programming
See All in Programming
愛される翻訳の秘訣
kishikawakatsumi
1
320
新卒エンジニアのプルリクエスト with AI駆動
fukunaga2025
0
210
実はマルチモーダルだった。ブラウザの組み込みAI🧠でWebの未来を感じてみよう #jsfes #gemini
n0bisuke2
0
260
dnx で実行できるコマンド、作ってみました
tomohisa
0
150
複数人でのCLI/Infrastructure as Codeの暮らしを良くする
shmokmt
5
2.3k
LLMで複雑な検索条件アセットから脱却する!! 生成的検索インタフェースの設計論
po3rin
2
680
AIコーディングエージェント(skywork)
kondai24
0
160
テストやOSS開発に役立つSetup PHP Action
matsuo_atsushi
0
150
著者と進める!『AIと個人開発したくなったらまずCursorで要件定義だ!』
yasunacoffee
0
130
SwiftUIで本格音ゲー実装してみた
hypebeans
0
270
令和最新版Android Studioで化石デバイス向けアプリを作る
arkw
0
390
Building AI Agents with TypeScript #TSKaigiHokuriku
izumin5210
6
1.3k
Featured
See All Featured
Writing Fast Ruby
sferik
630
62k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Typedesign – Prime Four
hannesfritz
42
2.9k
Thoughts on Productivity
jonyablonski
73
5k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.3k
[SF Ruby Conf 2025] Rails X
palkan
0
510
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
1
98
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.2k
Git: the NoSQL Database
bkeepers
PRO
432
66k
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ʜ
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂʂ