デリゲートはメソッドへの型安全な参照(関数ポインタのような)です。メソッドをデータとして扱うことができます:メソッドを保存し、引数として渡し、動的に呼び出します。イベントはデリゲートの上に構築されたパターンで、パブリッシュ・サブスクライブ(オブザーバー)モデルを実装します。C# ではコールバック、LINQ、イベント駆動型プログラミングを支えています。
デリゲート — メソッドを値として
;
Operation = (a, b) => a + b;
Operation multiply = (a, b) => a * b;
result = (, );
=> op(x, y);
Apply(multiply, , );
