コンテンツにスキップ

1

React と Next.js について

Next.js は、高速なフルスタックWeb アプリケーションを作成するためのビルディングブロックを提供する、柔軟な React フレームワークです。

しかし、これは具体的にどういう意味でしょうか?React と Next.js とは何か、そして Web アプリケーションの構築にどのように役立つのかについて、詳しく説明しましょう。

Web アプリケーションのビルディングブロック

最新のアプリケーションを構築する際には、いくつかの考慮事項があります。例えば、

  • ユーザーインターフェース - ユーザーがアプリケーションをどのように利用し、操作するか。
  • ルーティング - ユーザーがアプリケーションの異なる部分間をどのように移動するか。
  • データフェッチ - データはどこにあり、どのように取得するか。
  • レンダリング - 静的または動的コンテンツをいつ、どこでレンダリングするか。
  • 統合 - どのようなサードパーティサービス (CMS、認証、決済など) を使用し、どのように接続するか。
  • インフラストラクチャ - アプリケーションコードをどこにデプロイ、保存、実行するか (サーバーレス、CDN、エッジなど)。
  • パフォーマンス - エンドユーザー向けにアプリケーションをどのように最適化するか。
  • スケーラビリティ - チーム、データ、トラフィックの増加に伴い、アプリケーションはどのように適応するか。
  • 開発者エクスペリエンス - アプリケーションを構築および保守するチームのエクスペリエンス。

アプリケーションの各部分について、ソリューションを自分で構築するか、パッケージ、ライブラリ、フレームワークなどの他のツールを使用するかを決定する必要があります。

React とは?

React は、インタラクティブなユーザーインターフェースを構築するための JavaScript ライブラリです。

ユーザーインターフェース (UI) とは、ユーザーが画面上で見て操作する要素のことです。

User Interface example showing a browser window with a navigation, a sidebar, and a list of posts

ライブラリとは、React が UI を構築するための便利な関数 (API) を提供する一方で、アプリケーション内でそれらの関数をどこで使用するかについては開発者に委ねられていることを意味します。

React の成功の一因は、アプリケーション構築の他の側面について比較的寛容であることです。これにより、Next.js を含むサードパーティツールとソリューションのエコシステムが繁栄しました。

しかし、それはまた、完全な React アプリケーションをゼロから構築するには、ある程度の労力が必要であることも意味します。開発者は、ツールの設定や、一般的なアプリケーション要件に対するソリューションの再開発に時間を費やす必要があります。

Next.js とは?

Next.js は、Web アプリケーションを作成するためのビルディングブロックを提供する React フレームワークです。

フレームワークとは、Next.js が React に必要なツールと設定を処理し、アプリケーションに追加の構造、機能、および最適化を提供することを意味します。

Diagram showing how Next.js spans the server and client, and provides additional features such as routing, data fetching, and rendering.

React を使用して UI を構築し、その後、ルーティング、データフェッチ、キャッシングなどの一般的なアプリケーション要件を解決するために Next.js の機能を段階的に採用できます。すべて、開発者とエンドユーザーのエクスペリエンスを向上させながらです。

個々の開発者であっても、大規模なチームの一員であっても、React と Next.js を使用して、完全にインタラクティブで、非常に動的で、高性能な Web アプリケーションを構築できます。

次のチャプターでは、React と Next.js を使い始める方法について説明します。

チャプター完了1

React と Next.js について学習しました。

次へ

2: ユーザーインターフェース (UI) のレンダリング

ブラウザでユーザーインターフェース (UI) がどのようにレンダリングされるかの基本を学びます。