Reactとは?初心者向けにわかりやすく解説

この記事では、Reactの位置づけ(ライブラリかフレームワークか)、何が嬉しいのか、学習の前提、そして本連載のゴールを整理します。コードは最小限にして「理解の地図」を作る回です。

Reactは何を解決するのか

Webアプリが大きくなると、画面(UI)の状態は増えていきます。たとえば「ログイン状態」「カートの中身」「検索条件」「モーダルの開閉」「入力フォームの途中経過」などです。

従来の「DOM(HTML)を直接書き換える」やり方では、状態が増えるほど 更新の抜け漏れ分岐の増殖 が起きやすくなります。Reactは次の思想でこの問題を整理します。

  • 状態(state)を持つ
  • stateから UI(見た目)を宣言的に作る
  • stateが変われば UIは自動で更新される

つまり「UIをどう更新するか」ではなく、「いまの状態ならUIはこう」という設計に寄せます。

Reactの特徴:コンポーネント

Reactの中心概念は コンポーネント です。画面を小さな部品に分割し、それらを組み合わせて1画面を構成します。

例:ページの構造(イメージ)

  • Header(ヘッダー)
  • Sidebar(サイドメニュー)
  • ArticleList(記事一覧)
  • Pagination(ページ送り)
  • Footer(フッター)

部品に分けると次のメリットがあります。

  • 変更の影響範囲が小さくなる(保守が楽)
  • 同じUIを再利用できる(重複が減る)
  • テストしやすい(単体で動きを確認できる)

Reactの特徴:宣言的UI(Declarative UI)

Reactは「宣言的」です。典型的には次のように読み替えます。

  • 命令的:「ボタンを押したらこの要素のテキストを変えて、その後こっちを表示して…」
  • 宣言的:「countが増えたら、画面にはcountを表示する」

例(雰囲気):

<p>Count: {count}</p>
<button onClick={() => setCount(count + 1)}>+1</button>

「表示のロジック」が state に紐づくので、UI更新が追跡しやすくなります。

Reactを学ぶ前提:JavaScriptの最低限

この連載はReact初心者向けですが、最低限として次のJavaScriptは触ります。

  • let/const
  • 関数(function / アロー関数)
  • 配列と map / filter
  • オブジェクト({ key: value })
  • import/export

もし不安なら、まずは「配列のmap」「関数」「分割代入({ } / [ ])」だけ復習するとスムーズです。

この連載のゴールと進め方

ゴールは次の2つです。

  1. Reactの基本概念(JSX / コンポーネント / props / state)を理解する
  2. 小さな実用アプリ(TODO)を自力で作れるようになる

進め方は「毎回、小さな成功体験」を作る設計です。各回の最後に「チェックリスト」と「練習問題」を入れます。

次回は、ReactがなぜUI更新に強いのか(DOMと仮想DOM、再レンダーの考え方)を整理します。

コメント

タイトルとURLをコピーしました