
LINQ & Delegates
LINQ クエリ構文、メソッド構文、delegate、event、lambda 式、func/action
20 面接問題·
Junior
1C# における delegate とは何ですか?
1
C# における delegate とは何ですか?
回答
delegate は、特定のシグネチャを持つメソッドへの参照を表す型です。メソッドをパラメータとして渡したり、変数に格納したり、動的に呼び出したりできます。delegate は C# における event やコールバックの基盤であり、イベント駆動プログラミングや Strategy、Observer といったデザインパターンに不可欠な柔軟性を提供します。
2シンプルな lambda 式を宣言する正しい構文はどれですか?
2
シンプルな lambda 式を宣言する正しい構文はどれですか?
回答
(x) => x * 2 という構文が lambda 式の正しい形式です。=> 記号("lambda operator" と呼ばれる)はパラメータと式またはメソッド本体を区切ります。この簡潔な構文によりインラインの匿名関数を作成でき、LINQ で利用したり、振る舞いをパラメータとして渡したりする際に非常に便利です。パラメータが 1 つしかない場合は、その周りの括弧を省略できます。
3int を受け取り string を返すメソッドには、どのジェネリック delegate を使うべきですか?
3
int を受け取り string を返すメソッドには、どのジェネリック delegate を使うべきですか?
回答
Func<int, string> が適切なジェネリック delegate です。Func は値を返すメソッドに使われるためです。最後の型パラメータが戻り値の型を表し、それより前のものが入力パラメータを表すという規約になっています。Func は最大 16 個の入力パラメータを受け取れます。戻り値のないメソッドには、Func の代わりに Action を使う必要があります。
4
Func と Action の主な違いは何ですか?
5
LINQ は何の略ですか?
+17 面接問題
その他の.NET面接トピック
C# の基礎
Junior
25問C#言語の基礎
Junior
15問ASP.NET Core の基礎
Junior
18問ASP.NET Core のリクエストライフサイクル
Junior
20問Configuration & Settings
Junior
20問アプリケーションのライフサイクル
Junior
20問Dependency Injection
Mid-Level
24問Entity Framework Core
Mid-Level
25問Minimal APIs
Mid-Level
18問Web API開発
Mid-Level
22問ASP.NET Core における Async
Mid-Level
20問Authentication & Authorization
Mid-Level
18問HttpClient & ネットワーキング
Mid-Level
20問JSONシリアライズ
Mid-Level
20問Entity Framework Core 応用
Mid-Level
25問C# の高度な機能
Mid-Level
20問Clean Architecture
Mid-Level
20問Logging, Monitoring & Observability
Mid-Level
22問ユニットテストとxUnit
Mid-Level
20問統合テスト
Mid-Level
18問Docker & Containerization
Mid-Level
16問NuGet パッケージ管理
Mid-Level
16問Memory Management & GC
Senior
22問リアクティブプログラミング
Senior
24問Async/await とパターン
Senior
26問.NET デザインパターン
Senior
24問パフォーマンス最適化
Senior
22問セキュリティとベストプラクティス
Senior
24問SignalR とリアルタイム
Senior
22問マイクロサービスアーキテクチャ
Senior
25問