0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【React:シリーズ1】React基礎 — なぜ仮想DOMが必要?環境構築とSPAの基本

Last updated at Posted at 2025-12-04

React開発の第一歩として、基盤となる概念と開発環境の準備について解説します。

🚀 Reactとは

Reactとは、Meta(旧Facebook)が開発した UI構築に特化したJavaScriptライブラリ です。

  • SPAに特化したライブラリであり、ページの必要な部分だけを効率的に更新します。
  • UIを部品化(コンポーネント化)して再利用する コンポーネント指向 です。
  • 仮想DOM(Virtual DOM) という独自の仕組みを採用し、高速な描画を実現しています。

🌐 SPA(Single Page Application)とは

Single Page Application(シングルページアプリケーション) の略。
ページの遷移ごとに全画面を再読み込みする従来の方式とは異なり、Web アプリの形式として、必要な部分だけを動的に書き換える仕組みです。

メリット

  • ページ遷移が速い:画面全体を再読み込みしないため、アプリのようなスムーズな操作感を提供します。
  • 通信量の削減:必要なデータだけを通信するため、アプリケーションが軽量になります。

デメリット

  • 初回読み込みが重くなる場合がある:最初のアクセス時に必要なJavaScriptファイルなどをまとめて読み込むためです。
  • SEOに弱い:JavaScript実行前にクローラーが内容を取得しづらい特性があります。(※サーバーサイドレンダリング(SSR)やNext.jsで改善可能です。)

💡 仮想DOM(Virtual DOM)とは

Reactの高速な描画パフォーマンスの核となる仕組みです。

通常のWebページ描画(DOM操作)は処理コストが高く、頻繁な更新はパフォーマンスを低下させます。

仮想DOMでは、この問題を解決するために、
メモリ上に構築された軽量な仮想DOM(Virtual DOM)を更新し、実際のDOMへの反映は差分があった箇所だけ に抑えます。

[Image of Virtual DOM and Real DOM update comparison]

仕組みのポイント

  1. 仮想DOMの更新: データが変更されると、Reactはまずメモリ上の仮想DOMを更新します。
  2. 差分検出(Diffing): 更新後の仮想DOMと更新前の仮想DOMを比較し、変更された部分(差分)だけを高速に検出します。
  3. 実際のDOMへの反映: 検出された差分のみを、まとめて実際のDOMへ反映します。

👉 このプロセスにより、DOM操作が最小限に抑えられ、描画が高速になりパフォーマンスが向上します。

🛠️ Reactを使用するために必要なものと開発環境の準備

React開発を始めるには、まずJavaScriptの実行環境とプロジェクトの初期設定が必要です。

必須環境

  • Node.js: JavaScriptをサーバーサイドで実行するための環境です。これに付属する npm (Node Package Manager) や npx (Node Package Executor) を利用して、ライブラリのインストールやプロジェクトの作成を行います。

Reactプロジェクトの作成方法

プロジェクトを作成するための主なツールは2つあります。

1. create-react-app (CRA)

伝統的な方法で、すぐに開発を始められる環境を構築します。

npx create-react-app プロジェクト名

2. Vite (ヴィート) 【近年主流】

近年、React開発のビルドツールとして主流になりつつあるのがViteです。

項目 特徴
Vite 超高速・軽量・モダンなビルドツール。開発サーバーの起動やホットリロードが非常に高速です。
Webpack + Babel 柔軟だが設定が複雑。自分で細かく構築したい場合に利用されます。

Viteを使えば、より快適な環境で開発を始めることができます。

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?