最適化

Next.js には、アプリケーションの速度とCore Web Vitalsを向上させるためのさまざまな組み込み最適化機能が備わっています。このガイドでは、ユーザーエクスペリエンスを向上させるために活用できる最適化について説明します。

組み込みコンポーネント

組み込みコンポーネントは、一般的なUI最適化の実装の複雑さを抽象化します。これらのコンポーネントは以下の通りです:

  • 画像: ネイティブの<img>要素を基に構築されています。Imageコンポーネントは、遅延読み込みとデバイスサイズに基づいた自動リサイズにより、画像のパフォーマンスを最適化します。
  • リンク: ネイティブの<a>タグを基に構築されています。Linkコンポーネントは、より高速でスムーズなページ遷移のために、バックグラウンドでページをプリフェッチします。
  • スクリプト: ネイティブの<script>タグを基に構築されています。Scriptコンポーネントは、サードパーティスクリプトの読み込みと実行を制御します。

メタデータ

メタデータは、検索エンジンがコンテンツをより理解するのに役立ち(SEOの向上につながる可能性があります)、またソーシャルメディア上でのコンテンツの表示方法をカスタマイズできるため、さまざまなプラットフォームでより魅力的で一貫したユーザーエクスペリエンスを作成できます。

Next.js のHeadコンポーネントを使用すると、ページの<head>を変更できます。詳細はHeadコンポーネントのドキュメントをご覧ください。

静的アセット

Next.jsの/publicフォルダは、画像、フォント、その他のファイルなどの静的アセットを提供するために使用できます。/public内のファイルはCDNプロバイダーによってキャッシュされるため、効率的に配信されます。

アナリティクスとモニタリング

大規模なアプリケーション向けに、Next.jsは人気のあるアナリティクスおよびモニタリングツールと統合されており、アプリケーションのパフォーマンスを理解するのに役立ちます。詳細はアナリティクスOpenTelemetryおよびインストルメンテーションガイドをご覧ください。

画像

組み込みの `next/image` コンポーネントを使用して画像を最適化します。

フォント

組み込みの `next/font` ローダーを使用してアプリケーションのウェブフォントを最適化します。

スクリプト

組み込みの Script コンポーネントを使用してサードパーティスクリプトを最適化します。

静的アセット (Static Assets)

Next.js では public ディレクトリ内の画像などの静的ファイルを配信できます。その仕組みについて学びましょう。

バンドルアナライザー

@next/bundle-analyzer プラグインを使用して JavaScript バンドルのサイズを分析します。

アナリティクス

Next.js Speed Insights を使用してページパフォーマンスを測定・追跡

遅延読み込み (Lazy Loading)

アプリケーションの読み込みパフォーマンスを向上させるために、インポートしたライブラリやReactコンポーネントを遅延読み込みします。

インストルメンテーション

Next.jsアプリケーションでサーバー起動時にコードを実行するためのインストルメンテーションの使用方法を学びます

OpenTelemetry

Next.jsアプリケーションをOpenTelemetryで計装する方法を学びます。

サードパーティライブラリ

@next/third-parties パッケージを使用してアプリケーション内のサードパーティライブラリのパフォーマンスを最適化します。