# パフォーマンス最適化 (Angular) > OnPush strategy、trackBy、virtual scrolling、lazy loading、preloading、bundle size、Core Web Vitals、profiling - 22 面接問題 - Senior - [面接問題: Angular](https://sharpskill.dev/ja/technologies/angular/interview-questions.md) ## 1. AngularにおけるOnPush戦略とは何ですか? **回答** OnPushは、コンポーネントのinputが参照によって変更された場合、または内部イベントが発火した場合にチェックを制限する変更検知戦略です。この最適化により、複雑なアプリケーションでの検知サイクル数が大幅に削減されます。プレゼンテーショナルコンポーネントにデフォルトでOnPushを適用することは、パフォーマンスを向上させるためのベストプラクティスです。 ## 2. ngForディレクティブにおけるtrackByの主な役割は何ですか? **回答** trackByにより、Angularはリスト内の各要素を一意に識別できるため、更新時のDOM全体の再作成を回避できます。trackByがない場合、Angularは1つの要素が変更されただけでもすべての要素を破棄して再作成します。一意の識別子を持つtrackByを使用すると、動的リストのパフォーマンスが大幅に向上します。 ## 3. Angularのルーティングの文脈におけるlazy loadingとは何ですか? **回答** lazy loadingは、対応するルートがアクティブになったときにのみコードをダウンロードする、モジュールの遅延ロード技術です。これにより、初期バンドルサイズが削減され、アプリケーションの初回表示が高速化されます。lazy loadingされるモジュールは、ルート設定でloadChildrenを使用して定義されます。 ## さらに19問利用可能 - OnPushでチェックを強制するためにどのメソッドをトリガーしますか? - 大きなリストにおけるvirtual scrollingの主な利点は何ですか? 無料で登録: https://sharpskill.dev/ja/login ## その他のAngular面接トピック - [TypeScriptの基礎](https://sharpskill.dev/ja/technologies/angular/interview-questions/typescript-basics.md): 25問, Junior - [TypeScript上級](https://sharpskill.dev/ja/technologies/angular/interview-questions/typescript-advanced.md): 20問, Junior - [Angularの基礎](https://sharpskill.dev/ja/technologies/angular/interview-questions/angular-fundamentals.md): 20問, Junior - [コンポーネントとライフサイクル](https://sharpskill.dev/ja/technologies/angular/interview-questions/components-lifecycle.md): 20問, Junior - [Services & Dependency Injection](https://sharpskill.dev/ja/technologies/angular/interview-questions/services-dependency-injection.md): 20問, Junior - [Angularモジュールの構成](https://sharpskill.dev/ja/technologies/angular/interview-questions/modules-organization.md): 22問, Mid-Level - [Angular CLI](https://sharpskill.dev/ja/technologies/angular/interview-questions/angular-cli.md): 18問, Junior - [ディレクティブとPipe](https://sharpskill.dev/ja/technologies/angular/interview-questions/directives-pipes.md): 22問, Mid-Level - [ルーティングとナビゲーション](https://sharpskill.dev/ja/technologies/angular/interview-questions/routing-navigation.md): 24問, Mid-Level - [リアクティブフォーム](https://sharpskill.dev/ja/technologies/angular/interview-questions/forms-reactive.md): 26問, Mid-Level - [テンプレート駆動フォーム](https://sharpskill.dev/ja/technologies/angular/interview-questions/forms-template-driven.md): 16問, Mid-Level - [RxJS の基礎](https://sharpskill.dev/ja/technologies/angular/interview-questions/rxjs-fundamentals.md): 22問, Mid-Level - [RxJS オペレーター](https://sharpskill.dev/ja/technologies/angular/interview-questions/rxjs-operators.md): 24問, Mid-Level - [HttpClientとAPI呼び出し](https://sharpskill.dev/ja/technologies/angular/interview-questions/http-client.md): 22問, Mid-Level - [基本的な状態管理](https://sharpskill.dev/ja/technologies/angular/interview-questions/state-management-basics.md): 20問, Mid-Level - [Change Detection](https://sharpskill.dev/ja/technologies/angular/interview-questions/change-detection.md): 20問, Mid-Level - [Angular Signals](https://sharpskill.dev/ja/technologies/angular/interview-questions/angular-signals.md): 20問, Mid-Level - [Standalone Components](https://sharpskill.dev/ja/technologies/angular/interview-questions/standalone-components.md): 18問, Mid-Level - [Angularのユニットテスト](https://sharpskill.dev/ja/technologies/angular/interview-questions/testing-unit.md): 22問, Mid-Level - [エンドツーエンドテスト](https://sharpskill.dev/ja/technologies/angular/interview-questions/testing-e2e.md): 18問, Mid-Level - [ビルドと最適化](https://sharpskill.dev/ja/technologies/angular/interview-questions/build-optimization.md): 20問, Mid-Level - [NgRxの基礎](https://sharpskill.dev/ja/technologies/angular/interview-questions/ngrx-fundamentals.md): 24問, Senior - [NgRx応用](https://sharpskill.dev/ja/technologies/angular/interview-questions/ngrx-advanced.md): 24問, Senior - [Angularアーキテクチャ](https://sharpskill.dev/ja/technologies/angular/interview-questions/angular-architecture.md): 22問, Senior - [セキュリティとベストプラクティス](https://sharpskill.dev/ja/technologies/angular/interview-questions/security-best-practices.md): 20問, Senior - [高度な RxJS パターン](https://sharpskill.dev/ja/technologies/angular/interview-questions/advanced-rxjs-patterns.md): 22問, Senior - [Angular Universal と SSR](https://sharpskill.dev/ja/technologies/angular/interview-questions/angular-universal-ssr.md): 20問, Senior - [Angular マイクロフロントエンド](https://sharpskill.dev/ja/technologies/angular/interview-questions/micro-frontends-angular.md): 20問, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/ja/technologies/angular/interview-questions/performance-optimization