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
Why React!?? Next.jsそしてReactを改めてイチから選ぶ
Search
ypresto
September 30, 2025
Technology
2
200
Why React!?? Next.jsそしてReactを改めてイチから選ぶ
2025/09/30:Next.js vs Nuxt それぞれの良さを知る Frontend Night
ypresto
September 30, 2025
Tweet
Share
More Decks by ypresto
See All by ypresto
ts-morph実践:型を利用するcodemodのテクニック
ypresto
1
790
状態と共に暮らす:ステートフルへの挑戦
ypresto
3
2.1k
Next.jsとNuxtが混在? iframeでなんとかする!
ypresto
3
3.8k
Cancel Next.js Page Navigation: Full Throttle
ypresto
1
3.6k
Next.js のページ遷移を全力で止める
ypresto
15
9.8k
TypeScriptの型とパフォーマンス (TSKaigi 2024)
ypresto
22
8.1k
アクセシビリティとE2Eテスト
ypresto
0
130
VS Codeのプロセスモデルとデバッグ方法 - パフォーマンスと安定性を支えるアーキテクチャ
ypresto
1
520
TypeScriptの型定義をPRする技術
ypresto
1
780
Other Decks in Technology
See All in Technology
Goを使ってTDDを体験しよう!
chiroruxx
0
150
Deep Research と NotebookLM を使い倒す!レガシーリプレイスの技術選定と学習コスト削減術
tet0h
0
2k
【新卒研修資料】LLM・生成AI研修 / Large Language Model・Generative AI
brainpadpr
12
4.9k
施策が均質化する採用市場で何を捨て 何を大事にしていくかを考える
akyun
0
220
GA technologiesでのAI-Readyの取り組み@DataOps Night
yuto16
0
120
KAGのLT会 #8 - 東京リージョンでGAしたAmazon Q in QuickSightを使って、報告用の資料を作ってみた
0air
0
150
analysis パッケージの仕組みの上でMulti linter with configを実現する / Go Conference 2025
k1low
1
180
AIを導⼊しても、 開発⽣産性は"爆増"していない なぜ?
kinosuke01
4
3.4k
Создание мультиагентной системы на базе AI Studio
shwars
0
180
今改めてServiceクラスについて考える 〜あるRails開発者の10年〜
joker1007
17
7.7k
あなたのWebサービスはAIに自動テストしてもらえる?アクセシビリティツリーで読み解く、AIの『視点』
yusukeiwaki
1
1.9k
業務でAIの力を最大限に発揮するために #弁護士ドットコム
bengo4com
0
280
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
135
9.5k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Gamification - CAS2011
davidbonilla
81
5.4k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
Rails Girls Zürich Keynote
gr2m
95
14k
Music & Morning Musume
bryan
46
6.8k
Building Applications with DynamoDB
mza
96
6.6k
Become a Pro
speakerdeck
PRO
29
5.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
45
2.5k
Transcript
Why React!?? Next.jsそしてReactを改めてイチから選ぶ 2025/09/30:Next.js vs Nuxt それぞれの良さを知る Frontend Night ypresto
(@yuya_presto)
ypresto © LayerX Inc. LayerX バクラク事業部 (2024-01〜) プロダクト開発部 債権債務チーム Software
Engineer "フロントエンド" をよりよくしてます next-navigation-guard 作りました 採用サイトも見てください! 2
バクラクのフロントエンドスタック © LayerX Inc. 3
NuxtというかVueアプリの課題 → アプリ自体の設計改善を含め、 リライトの機運 © LayerX Inc. Vue 2→3 へのアップデートをしたものの...
bootstrap-vue の更新停止と不具合 Vue 2 の書き方 ( defineComponent() ) が残っている 4
Why React!?? バトル: React を選ぶ理由 → 「課題在外性」 の認知負荷を減らすことができそう © LayerX
Inc. React HooksのSimpleな設計と記述 純粋関数+immutableな状態 豊富でアクティブな定番ライブラリ react-hook-form, apollo, react-query, radix-ui, MUI, zustand, ... ツールチェインからのファーストクラスサポート (JSX、関数コンポーネント) TypeScript, ESLint, Prettier, Biome, ... 5
React Hooks: VirtualDOM = f(props, hooks) リアクティブのない世界では、状態と描画内容の同期が発生 状態やボタンが増えると、ハンドラが複雑になるおそれがある © LayerX
Inc. 6
React Hooks: VirtualDOM = f(props, hooks) コンポーネント全体を純粋関数のように扱うことで、挙動と記述がシンプルに 詳解Reactive記事 © LayerX
Inc. 7
Next.js の役割:最適化 © LayerX Inc. ページ遷移の高速化 Client-Side Transition ( <Link>
、戻る・進む) Prefetching ページ配信の高速化 (HTMLを事前描画、キャッシュ) SSG & ISR (静的) SSR (動的) → Core Web Vitalsが改善 SEOにも有利 8
従来のSPAが動的なページを描画するまでのプロセス © LayerX Inc. 9
Next.jsが描画するまでのプロセス (SSRの場合) © LayerX Inc. 10
App Routerでの透過的な配信最適化 © LayerX Inc. Server Components サポート staticな部分は、HTMLだけ返す JavaScriptバンドルにコンポーネントを含めない
Partial Prerendering (β) staticな部分を事前ビルド Streaming 途中でデータ取得が混じっているとき、その部分だけを非同期に描画 11
Next.js の役割:統合 → 自前で整備せず、フレームワークを頼った方が効率的 (Zero Config) © LayerX Inc. ルーティング
app/foo/page.tsx → https://example.com/foo サーバサイドロジック Pages Router: getServerSideProps() , getStaticProps() App Router: Server Components / Server Functions ( async function foo() { "use server"; ... } ) API Routes api/baz.ts アセットの最適化とHMR webpack/Turbopack や SWC: CSS対応、minify、Tree Shaking, ... next/image , next/font 12
Next.js を選ぶ理由 © LayerX Inc. Reactアプリに必要なパターンや設定の提供 透過的なパフォーマンス最適化 これらがZero Config 13
ただしクセもある © LayerX Inc. Historyを上書きしていて、イベント介入もできない (next-navigation-guardの誕生) サーバ側で fetch() を上書きしてcache管理機能をつけていたり webpackの設定がブラックボックス
14
まとめ:今React + Next.jsを選ぶ理由 © LayerX Inc. React リアクティビティのシンプルさ 豊富でアクティブな定番ライブラリ エコシステムからのファーストクラスサポート
Next.js Reactアプリに必要なパターンや設定の提供 透過的なパフォーマンス最適化 Zero Config 使ってる人が多い → 情報の多さ 15
React + Next.js Rocks. © LayerX Inc. 16