Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Next.js 入門解説: Reactとの決定的な違いとApp Routerに基づくモダンWeb開発
Search
MIKIO KUBO
November 19, 2025
Programming
1
83
Next.js 入門解説: Reactとの決定的な違いとApp Routerに基づくモダンWeb開発
# Next.js 入門解説
## Reactとの決定的な違いとApp Routerに基づくモダンWeb開発
MIKIO KUBO
November 19, 2025
Tweet
Share
More Decks by MIKIO KUBO
See All by MIKIO KUBO
The Fusion of Mathematical Optimization and AI (MOAI): History and Outlook (Final Version)
mickey_kubo
0
24
The Fusion of Mathematical Optimization and AI (MOAI): History and Outlook (Short Version)
mickey_kubo
1
28
The Fusion of Mathematical Optimization and AI (MOAI): History and Outlook
mickey_kubo
1
67
History and Future of MO+AI
mickey_kubo
1
59
History and Future of MO+AI (Fusion of Mathematical Optimization and Artificial Intelligence)
mickey_kubo
1
23
Google Antigravity and Vibe Coding: Agentic Development Guide
mickey_kubo
2
230
React完全入門
mickey_kubo
1
83
TypeScript初心者向け完全ガイド
mickey_kubo
1
82
ポストSaaS時代:コンポーザブル、エージェント 型、成果指向ソフトウェアへの移行を読み解く
mickey_kubo
1
75
Other Decks in Programming
See All in Programming
20251212 AI 時代的 Legacy Code 營救術 2025 WebConf
mouson
0
210
tsgolintはいかにしてtypescript-goの非公開APIを呼び出しているのか
syumai
7
2.3k
안드로이드 9년차 개발자, 프론트엔드 주니어로 커리어 리셋하기
maryang
1
140
AIエンジニアリングのご紹介 / Introduction to AI Engineering
rkaga
8
3.3k
「コードは上から下へ読むのが一番」と思った時に、思い出してほしい話
panda728
PRO
39
26k
re:Invent 2025 のイケてるサービスを紹介する
maroon1st
0
150
バックエンドエンジニアによる Amebaブログ K8s 基盤への CronJobの導入・運用経験
sunabig
0
170
Java 25, Nuevas características
czelabueno
0
110
HTTPプロトコル正しく理解していますか? 〜かわいい猫と共に学ぼう。ฅ^•ω•^ฅ ニャ〜
hekuchan
2
450
AI Agent Dojo #4: watsonx Orchestrate ADK体験
oniak3ibm
PRO
0
110
Full-Cycle Reactivity in Angular: SignalStore mit Signal Forms und Resources
manfredsteyer
PRO
0
170
Denoのセキュリティに関する仕組みの紹介 (toranoana.deno #23)
uki00a
0
160
Featured
See All Featured
The Spectacular Lies of Maps
axbom
PRO
1
400
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
115
93k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
74
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
120
The #1 spot is gone: here's how to win anyway
tamaranovitovic
1
870
Crafting Experiences
bethany
0
22
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
65
35k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
2
260
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
61
50k
Everyday Curiosity
cassininazir
0
110
Done Done
chrislema
186
16k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.3k
Transcript
Next.js 入門解説 React との決定的な違いとApp Router に基づくモダンWeb 開発 1
現代のWeb 開発に求められる要件とReact の課題 「React だけ」では解決できない課題があります 現代のWeb アプリの必須要件: 初期表示の高速化、SEO対策、堅牢なインフラ React (
ライブラリ) の限界: Reactは「UI構築」に特化しており、これだけでは不足 ルーティング、SEO、APIなどを個別に設定する必要がある 設定の沼 (Configuration Hell): 数多くの外部ライブラリを組み合わせる複雑さが開発の負担に 2
Next.js とは:React を拡張したフルスタックフレームワーク 複雑な設定を排除し、開発に集中できる環境を提供 フルスタックフレームワーク: Reactを基盤としつつ、必要なインフラ機能をすべて内蔵 オールインワンの機能: サーバー側レンダリング (SSR) /
静的サイト生成 (SSG) ファイルシステムベースのルーティング APIルートの作成機能 メリット: 高パフォーマンスでSEOに強いアプリを 迅速に構築可能 3
比較:React ( ライブラリ) vs Next.js ( フレームワーク) 項目 React (
ライブラリ) Next.js ( フレームワーク) 役割 UIパーツの構築 フルスタック開発基盤 ルーティング 外部ライブラリが必要 ファイルベースで内蔵 レンダリング 基本的にCSR (遅い) SSR / SSG ( 高速・SEO) API 別途サーバー構築 API ルート内蔵 画像最適化 手動設定 <Image> で自動化 4
Next.js のレンダリング戦略:ハイブリッドアプローチ コンテンツに応じて最適なレンダリング手法を選択可能 CSR (Client-Side Rendering): ブラウザで描画。インタラクティブなUI向け。 SSR (Server-Side Rendering):
サーバーで都度描画。頻繁に更新されるデータ向け。 SSG (Static Site Generation): ビルド時にHTML生成。ブログや概要ページ向け(最速)。 ハイブリッドの強み: ページごとにこれらを使い分け、パフォーマンスとSEOを最大化 5
デプロイメントの革命:Vercel との連携 インフラ設定不要で、高度な配信環境を実現 Vercel との密接な連携: Next.jsの開発元プラットフォーム 自動最適化: 静的ファイルはCDNへ、APIはサーバーレス関数へ自動配置 簡単なデプロイ: Git連携のみで「ハイブリッドレンダリング」環境が完成
初学者でもインフラ構築の学習コストなしに公開可能 6
新しい基盤:App Router のアーキテクチャ ファイルシステムとURL が直感的に対応 フォルダ構造 = URL パス: app
ディレクトリ内のフォルダ名がそのままURLになる 安全な設計: フォルダを作っただけでは公開されない page.tsx を作成して初めてアクセス可能になる 動的ルーティング: [slug] のようにフォルダ名をつけるだけでパラメータ取得可能 複雑な設定コードが不要に 7
App Router における主要ファイルの役割 ファイル名によって役割が明確に定義されています ファイル名 役割 説明 page.tsx ルートUI そのURLで表示されるメインコンテンツ
layout.tsx レイアウト ヘッダーなど、ページ遷移しても維持されるUI loading.tsx 読み込み中 データ取得中のローディング表示 error.tsx エラー処理 エラー発生時のフォールバック表示 route.ts API定義 Web APIのエンドポイントを作成 8
革新技術:Server Components (RSC) サーバーとクライアントの役割を明確に分離 Server Components ( デフォルト): サーバー側でレンダリングし、結果のHTMLだけを送信 JS
バンドルサイズ削減: クライアントの読み込みが劇的に高速化 セキュリティ: データベース接続情報などを安全に扱える できないこと: useState や onClick などの対話機能は使えない → インタラクティブな部分のみ Client Components を使う 9
Client Components の使い所 必要な部分だけを「クライアント」にする 役割: ユーザーとの対話(クリック、入力)、状態管理(Hooks)を担当 実装方法: ファイル先頭に 'use client'
を記述 ベストプラクティス: アプリの大部分は Server Components (RSC) で構成 インタラクティブな「末端のUI」だけを Client Components にする 10
モダンなデータフェッチング Server Components なら、データ取得が直感的かつシンプルに // app/page.tsx (Server Component) export default
async function Page() { // サーバー側で直接APIを叩ける let data = await fetch('[https://api.vercel.app/blog](https://api.vercel.app/blog)'); let posts = await data.json(); return ( <ul> {posts.map((post) => ( <li key={post.id}>{post.title}</li> ))} </ul> ); } useEffect やローディング管理が不要になり、コードが激減。 11
標準搭載された最適化機能 (Optimization) 開発者が意識せずとも、ベストプラクティスが適用される 画像最適化 ( <Image> ): デバイスに応じたサイズ変更、WebP変換、遅延ロードを自動化 レイアウトのズレ (CLS)
を自動で防止 ナビゲーション最適化 ( <Link> ): リンクが画面に入ると、リンク先をバックグラウンドで先読み ユーザーがクリックした瞬間、即座に遷移完了 12
開発者体験 (DX) と TypeScript 堅牢で快適な開発環境がすぐに手に入る TypeScript 完全対応: セットアップ不要で、型安全な開発が可能 リンクの型安全性: プロジェクト内のルート情報を自動解析
存在しないページへのリンクをエディタ上で警告 結果: デバッグ時間の短縮と、保守性の高いコード維持 13
まとめ:Next.js を学ぶ価値 「UI ライブラリ」から「プロダクション環境」への架け橋 Next.js = React + インフラストラクチャ Reactの良さを活かしつつ、Web開発の複雑な課題を一挙に解決
習得するスキル: サーバー機能、レンダリング戦略、パフォーマンス最適化 結論: インフラ管理から解放され、 ユーザー体験とビジネスロジックに集中でき る最強のツール 14