In
computing
Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithmic processes, and development of both hardware and software. Computing has scientific, ...
or
computer programming
Computer programming is the process of performing a particular computation (or more generally, accomplishing a specific computing result), usually by designing and building an executable computer program. Programming involves tasks such as anal ...
, delegation refers generally to one entity passing something to another entity,
[Barry Wilkinson, ''Grid Computing: Techniques and Applications'' (2009), p. 164, .] and narrowly to various specific forms of relationships. These include:
*
Delegation (object-oriented programming)
In object-oriented programming, delegation refers to evaluating a member (property or method) of one object (the receiver) in the context of another original object (the sender). Delegation can be done explicitly, by passing the sending object ...
, evaluating a member of one object (the receiver) in the context of another, original object (the sender).
**
Delegation pattern In software engineering, the delegation pattern is an object-oriented design pattern that allows object composition to achieve the same code reuse as inheritance.
In delegation, an object handles a request by delegating to a second object (the ''de ...
, a design pattern implementing this feature.
**
Forwarding (object-oriented programming) In object-oriented programming, forwarding means that using a member of an object (either a property or a method) results in actually using the corresponding member of a different object: the use is ''forwarded'' to another object. Forwarding is u ...
, an often-confused technique where a sending object uses the corresponding member of another object, without the receiving object having any knowledge of the original, sending object.
**
Object aggregation
In computer science, object composition and object aggregation are closely related ways to combine objects or data types into more complex ones. In conversation the distinction between composition and aggregation is often ignored. Common kin ...
or consultation, general term for one object using another.
*
Delegation (computer security), one user or process allowing another user or process to use their credentials or permissions.
*
Delegate (CLI) A delegate is a form of type-safe function pointer used by the Common Language Infrastructure (CLI). Delegates specify a method to call and optionally an object to call the method on. Delegates are used, among other things, to implement callback ...
, a form of type-safe function pointer used by the
Common Language Infrastructure
The Common Language Infrastructure (CLI) is an open specification and technical standard originally developed by Microsoft and standardized by ISO/ IEC (ISO/IEC 23271) and Ecma International (ECMA 335) that describes executable code and a ...
(CLI), specifying both a method to call and optionally an object to call the method on.
See also
*
Delegation (disambiguation)
References
{{SIA