React Compiler 1.0:自動メモ化が本番へ
2025 年 10 月から安定版となり、2026 年を通じて採用が進んだ React Compiler は、useMemo も useCallback も手書きせずに、コンポーネントを自動で最適化します。それが本当に変えるもの。
手書きの useMemo の終わり?
長年、React アプリの最適化とは、useMemo や useCallback、React.memo をあちこちに撒くことでした——手作業で、退屈で、間違えやすい。2025 年 10 月 7 日から 1.0 で安定版となった React Compiler は、この論理をひっくり返します。コンパイル時にコンポーネントとフックを自動でメモ化し、何も書き直させません。
具体的に何をするのか
コンパイラはあなたのコードを解析し、最適化をあなたの代わりに挿入します。React と React Native で動作し、Meta のアプリで徹底的に鍛えられ、本番投入可能とされています。Meta Quest Store では、Meta は初回読み込みとナビゲーションで最大 +12 %、一部のインタラクションは 2.5 倍以上高速と報告しています。
2026 年に採用が加速
- React のバージョンは定期的にリリースされ続けました(2026 年 6 月には 19.2.7 まで)。
- 2026 年 4 月、
eslint-plugin-react-hooks7.1.0 が ESLint v10 のサポートを追加し、React 以外のファイルのコンパイルをスキップ(パフォーマンス向上)、そしてエフェクト内のset-stateの検出を改善しました。 - ツール面では、有効化は Babel プラグイン経由です。React チームは、より速い統合のために oxc と Rolldown と協働しています。
私の働き方が変わること
二つあります。まず、ノイズが減る:業務コードが防御的な最適化で汚れなくなります。読みやすい React を書けば、メモ化はコンパイラが担う。次に、微妙なパフォーマンスのバグが減る:うっかり忘れる useCallback、依存配列の記入漏れでサブツリー全体を再レンダリングしてしまう——それらをコンパイラが一貫して処理します。
ただし注意:魔法の杖ではありません。React のルール(レンダリング中のミューテーションや副作用)に反するコードは最適化されず、コンパイラがそれを指摘します。むしろ良い規律です——正しい React を書くよう促してくれます。
React Compiler は、レンダリングの理解を代替しません。きれいなコードを報い、雑なコードを罰します。
今日、有効にすべきか?
新規の React 19 / Next.js プロジェクトなら、答えはイエス:利得はほぼ無償です。既存のコードベースなら、段階的に有効化し、非準拠のコンポーネントを見つけるために lint を頼りにします。私のプロジェクトでのルールはシンプルです——コンパイラに最適化させ、アーキテクチャの主導権は握り続ける。