デリゲート【delegate】委譲

概要

デリゲートとは、委任する、委譲する、委託する、代理を立てる、代理人、代表者などの意味を持つ英単語。IT分野では、プログラミングであるオブジェクトから別のオブジェクトへ処理を委譲することなどをデリゲートという。
デリゲートのイメージ画像

プログラミングにおけるデリゲート

オブジェクト指向プログラミングの分野では、オブジェクトが一部の処理を別のオブジェクトに肩代わりさせる仕組みのことをデリゲートという。実装の一部を他のオブジェクトに分離することができる。「委譲」と訳語を用いることもある。

あるオブジェクトメソッドを呼び出した時に、自動的に別のオブジェクトの特定のメソッドを呼び出して実行する仕組みである。委譲先のオブジェクトメソッドは条件に応じて切り替えたり、追加したり入れ替えたりすることができる。

よくある応用例としてイベント処理がある。イベント発生時に呼び出されるメソッドイベントハンドラ)にデリゲートの仕組みに基づいて実行したいメソッドを登録しておけば、それらをまとめて実行することができる。

多くのプログラミング言語では、プログラムコードの特徴的なパターン(デザインパターン)としてデリゲートを実装するが、JavaScriptプロトタイプのようにデリゲート実装に便利な仕様を活用したり、.NET言語のように言語仕様の一部としてデリゲートが用意されている場合もある。

他の辞典等による「デリゲート」の解説 (外部サイト)

資格試験などの「デリゲート」の出題履歴

▼ 基本情報技術者試験
令2修6 問45】 オブジェクト指向における “委譲” に関する説明として,適切なものはどれか。
平30秋 問49】 オブジェクト指向における “委譲” に関する説明として,適切なものはどれか。
この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。