Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
React、まだ楽しくて草
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
uhyo
June 06, 2026
Technology
5k
7
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
React、まだ楽しくて草
フロントエンド・PHPカンファレンス北海道2026
uhyo
June 06, 2026
More Decks by uhyo
See All by uhyo
Reactの設計論
uhyo
15
8.5k
型があると何が嬉しいか
uhyo
3
110
Baseline対応のDOMの型定義を作った
uhyo
3
920
AIのReact習熟度を測る
uhyo
2
990
TypeScript 7.0の現在地と備え方
uhyo
6
3.8k
React 19時代のコンポーネント設計ベストプラクティス
uhyo
20
11k
型定義でAIと会話する:型を通じてAIに意図を伝えるテクニック
uhyo
1
110
タグ付きユニオン型を便利に使うテクニックとその注意点
uhyo
3
1.2k
ECMAScript仕様の最新動向: プロセスの変化と仕様のトレンド
uhyo
3
960
Other Decks in Technology
See All in Technology
Sigmaで作る業務アプリ
kazushiro_honma
0
120
omasushiというライブラリを作った
polidog
PRO
0
210
Adaptive Warehouse を今すぐ導入すべき理由と迷ったときの判断基準
__allllllllez__
0
200
全員がプロダクトへ向き合う組織を持続成長させるために——組織づくりのフライホイールと4象限 / The Flywheel Model and Four Quadrants for Organizational Design
hiro_torii
4
980
20260912_スクラムにジェネラリストは必要か
ryugen04
0
380
AI時代だからこそ、スケールしないことをやろう
yutashigemura
1
150
#jawssonic2026 あの時代が悪かった ~動かなかったSageMakerと共に迎えたイベント当日~
ktkn1129
0
150
薬剤師(ドメインエキスパート)と一緒に育てる薬局向けAIアシスタント
kakehashi
PRO
2
160
日経電子版を支えていく Kasane Design System/fec_fukuoka
nikkei_engineer_recruiting
0
980
「図書館」という名前のままでいいのか -Code4Lib JAPANカンファレンス2026 アンカンファレンス報告- / Code4Lib JAPAN Conference 2026: Unconference Report
ykiyota
0
170
リージョンの壁を越える、 ちょっと変わったAWSサービスの話
falken
PRO
1
310
range over func 2年間の軌跡 Issue #56413 はGoのエコシステムをどう変えたか
ryujicre8ive
0
110
Featured
See All Featured
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.5k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
490
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
570
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.8k
Thoughts on Productivity
jonyablonski
76
5.4k
Mobile First: as difficult as doing things right
swwweet
225
10k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
350
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
500
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
Leo the Paperboy
mayatellez
9
2.3k
Transcript
React、まだ楽しくて . 2026-06-06 フロントエンド・PHPカンファレンス北海道2026
発表者紹介 uhyo 株式会社カオナビ フロントエンドエキスパート 去年は飛行機が雷に打たれて会場に来れなかった が、今年は無事に来ることができた。 2
このトークのゴール 3 React、まだ楽しくて草 と皆さんに思ってもらうこと .
なにわろとんねん これだけ普及しているにもかかわらず、 Reactは技術の発展の余地が いまだに多いエコシステムであり、 ある意味でブルーオーシャンである。 4
Reactの最近の動き React 18.0 … 2022年 • Suspense,トランジションなど React 19.0 …
2024年 • RSC正式サポート, アクション, useなど React 19.2 … 2025年 • Activity, useEffectEventなど 5
React Conf 2025 •React Compiler 正式版 •Async React講演 • Async
React WG発足 6
Async React WG 最近のReactのAPI(Suspenseやそれを前提したAPI) を活かすのがAsync React。 WGはAsync Reactの普及を目的としている。 7
Async Reactの具体例 •ルーターライブラリはルート移動を トランジションにすべき •というかもうほぼ全部トランジションでいいよ •useTransitionやViewTransitionといった道具を 用いて良いUXを提供すべき •コンポーネントライブラリにもトランジションを 組み込むべき 8
Async Reactの真髄 Async Reactは宣言的UIと密接な関係にある。 Async Reactによって、Reactが考える 宣言的UIが次の段階に進んでいることが 明確になった。 9
Async Reactの現状 WGはエコシステムのライブラリや教育者への 情報提供を主な活動としている。 10
Async Reactの現状 裏を返せば…… ライブラリの成熟度、ユーザーの技術力は まだ向上の余地があって 11
実際どうなのか① Reactの新しめのAPIがどれくらい使用されて いるのか •Suspense: 74% •useTransition/startTransition: 25~27% •useActionState/useOptimistic: 12~16% (State
of React 2025より) 12
実際どうなのか② AIのReact活用力もまだいまいち。 人間が指示しなければ、Async React関連のAPIを 自主的に使うことはほとんど無い。 13
Async Reactの現状 Suspenseとトランジションを使うだけで Reactユーザー層の上位3割に入れて 14
上位3割に入ると何が嬉しいのか Async Reactを使いこなすことの利点 •より宣言的なコード •UXと保守性の両立 15
AIとの親和性 Async Reactを含むReactのAPIの特徴は、 コンポーネント横断的な処理を Reactが担ってくれること。 より局所的なコードを書くことができる。 正しく使えば少ないコードリーディングで済み、 コンテキストの節約に。 16
がやっていること 17
まだやられていないことをやる Reactエコシステムで新規性のあるものを作る。 18
FUNSTACK Router Navigation APIのみをサポート するルーターライブラリ。 •完全にSuspenseベースのAPI •ルートに紐づいたステート管理という側面も持ち、 Navigation APIとの親和性が高い設計 19
FUNSTACK Router Navigation APIは実装全部出揃ったと言ってるけど、 ChromeもSafariも実装が不完全だったり バグがあったりするんですよ。 知っていましたか? 私は知りました。 (Firefoxの不具合は関知していないけど知らないだけであるかも) 20
FUNSTACK Router 現在のURLをReactの世界で使うとき、 素朴にuseSyncExternalStoreじゃうまくいきません。 なぜだか分かりますか? 私は分かりました。 21
FUNSTACK Router ReactのSuspenseを活用するためにはコンポーネン トの外にキャッシュ置き場が必要であり、 Navigation APIのNavigationHistoryEntryのidが キャッシュキーとして最適であることに気づけます か? 私は気づきました。 22
FUNSTACK Router まとめ 「Navigation API使えるようになった!」ではなく、 より高解像度で現状を見られるようになった。 Navigation APIとReactをどのように組み合わせる べきか説明できる数少ない人間の1人になった。 23
FUNSTACK Static サーバー不要・RSC活用 の両立をテーマとした、 React用フレームワーク。 ビルド時にのみRSCのサーバー側を実行することで、 RSCの恩恵を受けた完全クライアントサイドのSPA を作ることができる。 24
FUNSTACK Static Reactのフレームワークってどうやって作るの? RSCってどういう仕組みで動いてるの? 私は知っています。 25
FUNSTACK Static クライアントサイドのコード分割をコントロール したい時はimport()を使うといいけど、 RSCのサーバー側のコード分割はどうすればいい? 私が仕組みから作りました。 26
FUNSTACK Staticのdefer() API 27 deferでRSCペイロードの ストリームを分割できる
FUNSTACK Static RSCの脆弱性リスクを回避したいとき、 RSCを全く使わない以外の選択肢を提示できますか? 私はしました。 28
FUNSTACK Static まとめ RSCの活用方法の幅を広げることで、 従来RSCに興味を持たなかった層にもRSCの恩恵を 届けたいな…… Reactフレームワークという形で自分のアイデアを 実装できる、数少ない人間の1人となった。 29
そのほか: Generative UI Generative UIのローディング 中の表現ってSuspenseででき るよね!? と思ったが誰もその話をしてい なかったし、Vercelなどの実装 もSuspense活用できていない。
30
そのほか: Generative UI Generative UIのローディング 中の表現ってSuspenseででき るよね!? と思ったが誰もその話をしてい なかったし、Vercelなどの実装 もSuspense活用できていない。
31
ここまでをまとめると 32 React、まだやられていないことが意外と沢山あって、 ちょっと取り組めば第一人者になれて
React本体の面白さ 33
React本体の面白さ そもそも、React自体、面白いライブラリである。 34
React本体の面白さ そもそも、React自体、面白いライブラリである。 面白さの源泉は、どこまで見えているのか 分からない底知れない先見性にある。 35
典型例: <StrictMode> StrictModeは、今あるいは将来のバージョンの Reactで問題になる挙動をキャッチできる。 •React 16: コンポーネントの2回実行 •React 18: useEffectのエフェクトを余計に実行
36
useMemo, useCallback これらはReact Compilerで不要になった。 依存配列は元々ルールによって決まるもので、 我々が自由に書くものではなかった。 依存配列のない世界のコードが、 Reactが目指していたReactのコードなのだろう。 37
startTransition startTransitionはasync関数に関する制約がある。 制約の解消にはAsync Contextが必要。(Stage 2) Reactが本当にやりたいことに まだJavaScriptが追いついていない。 38
他にもいろいろ Reactのソースコードには、Feature Flagで隠され てまだ使えない実験中の機能がいろいろある。 今のReactは、理想のReactを何パーセント実現 できているのだろうか? 39
まとめ 40
React、まだ楽しくて •Reactは宣言的UIについてかなり深く考えている •Reactの最新機能を活用できている人は少数派 •設計論も発展の余地がまだまだある •頑張れば第一人者になれる •React本体もまだ発展の余地が残されている 41