В объектно-ориентированном программировании существуют два смежных понятия делегирования.
- В современном понимании это означает свойство языка программирования использовать правила поиска метода для диспетчеризации так называемых self-calls (объектных вызовов). Это понятие было введено Либерманом в его статье 1986 года "Using Prototypical Objects to Implement Shared Behavior in Object-Oriented Systems" («Использование прототипических объектов для реализации общего поведения в объектно-ориентированных системах»). Делегация как свойство языка — составляющая часть парадигмы прототипного программирования.
- В его исходном использовании, делегирование означает ситуацию, когда объект для предоставления определённого набора функциональности полагается на другой объект. В научной литературе это часто обозначается как консультирование (англ. сonsultation) или агрегирование.
См. также
Литература
- Henry Lieberman. Using prototypical objects to implement shared behavior in object-oriented systems. In: Conference proceedings on Object-oriented programming systems, languages and applications. Portland 1986, p. 214-223. ISSN 0362-1340
- Lynn Andrea Stein, Henry Lieberman, David Ungar. A shared view of sharing: The Treaty of Orlando. In: Won Kim, Frederick H. Lochovsky (Eds.): Object-Oriented Concepts, Databases, and Applications ACM Press, New York 1989, ch. 3, pp. 31-48. ISBN 0-201-14410-7