# NgRx応用 (Angular) > Entity adapter、feature states、meta-reducers、router store、component store、effectsパターン、エラーハンドリング - 24 面接問題 - Senior - [面接問題: Angular](https://sharpskill.dev/ja/technologies/angular/interview-questions.md) ## 1. NgRxにおけるcreateEntityAdapterの主な役割は何ですか? **回答** Entity Adapterは、正規化されたエンティティのコレクションを管理するためのreducerとselectorを自動的に生成します。addOne、addMany、updateOne、removeOneなどのメソッドを提供し、IDでインデックス化されたオブジェクトの操作を容易にします。これにより、コレクション管理ロジックを手動で記述する必要がなくなり、パフォーマンス向上のために正規化された状態が保証されます。 ## 2. Entity Adapterはエンティティを保存するためにどのデータ構造を使用しますか? **回答** Entity Adapterは、idsとentitiesの2つのプロパティを持つオブジェクトにエンティティを格納します。idsは識別子の順序付き配列、entitiesはO(1)アクセス用のキーバリュー辞書です。この正規化された構造により、重複を回避し、IDによる更新を容易にし、ルックアップパフォーマンスを最適化します。ids配列は表示順序を維持します。 ## 3. Entity Adapterでカスタムソート比較関数を指定する方法は? **回答** ソート比較関数は、アダプター作成時にsortComparerプロパティで定義されます。この関数は2つのエンティティを比較し、順序を決定するための数値(負、ゼロ、または正)を返します。sortComparerがfalseに設定されている場合、自動ソートは適用されず、idsは挿入または更新の順序を維持します。 ## さらに21問利用可能 - 1回の操作で複数のエンティティを追加または更新するために、Entity Adapterのどのメソッドを使用しますか? - Entity Adapterのどの定義済みselectorが、すべてのエンティティを配列として取得しますか? 無料で登録: 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 - [Angularアーキテクチャ](https://sharpskill.dev/ja/technologies/angular/interview-questions/angular-architecture.md): 22問, Senior - [パフォーマンス最適化](https://sharpskill.dev/ja/technologies/angular/interview-questions/performance-optimization.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/ngrx-advanced