コンテンツにスキップ

Chapter 1: ReactとNext.jsの概要

React と Next.js がどんな課題を解決し,どのように役割分担しているのかを最初に整理しておきましょう。ここで全体像を押さえておくと,以降のハンズオンが理解しやすくなります。


Web アプリを形作る要素

モダンな Web アプリケーションでは,次のような要素を組み合わせて体験を作ります。

気に留めておきたい観点

  • UI(ユーザーインターフェース):画面上でユーザーが触れるパーツ
  • ルーティング:ページや画面をどう切り替えるか
  • データ取得:どこから情報を持ってくるか
  • レンダリング:いつ,どこで UI を生成するか(サーバー?ブラウザ?)
  • 外部サービス連携:認証・CMS・決済などとの接続
  • インフラ:アプリをどこに置き,どう配信するか
  • パフォーマンス / DX:高速で快適な体験をどう維持するか

これらのすべてを手作りするのは大変なので,ライブラリやフレームワークを上手に組み合わせて開発します。


React とは?

React は,UI を宣言的に記述できる JavaScript ライブラリ です。
「ナビゲーション」「カード」「リスト」など,画面を構成する要素をコンポーネントとしてまとめ,組み合わせながら UI を構築します。

React が得意なこと

  • ボタンを押したらカウントが増える
  • 入力フォームの内容に応じて表示を切り替える
  • ページの一部分だけ更新して,ほかの部分はそのままにしておく

React は UI を描画する仕組みに集中しており,「どう組み合わせるか」「どのツールと一緒に使うか」は開発者次第です。ここがライブラリと呼ばれる理由です。


Next.js とは?

Next.js は,React を基盤にした フレームワーク です。
ルーティング,データ取得,レンダリング戦略,ビルドやデプロイの最適化など,アプリ全体に必要な機能をセットで提供してくれます。

Next.js が肩代わりしてくれること

  • ページをファイルベースで管理し,自動的にルーティング
  • サーバー側でデータを取得し,最適なタイミングでレンダリング
  • 画像やフォントの最適化,キャッシュ戦略の構築
  • API ルートや Edge Functions などバックエンド機能の補助

つまり React で UI を表現しやすくし,Next.js はその UI を「いつ・どこで・どう届けるか」を整えてくれる存在です。


まとめと次のステップ

  • React は UI を構築・再利用するためのライブラリ
  • Next.js は React を取り巻く設定やインフラの悩みを肩代わりするフレームワーク
  • 両者を組み合わせることで,個人開発から大規模開発まで一貫した体験を設計できる

次の Chapter では,ブラウザが UI をどのように描画しているのかを観察しながら,React が登場する背景を掘り下げます。