Everything about Delegation (object-oriented programming)
Evaluation and comparison of objects
In object-oriented programming, delegation refers to evaluating a member of one object in the context of another original object. Delegation can be done explicitly, by passing the responsibilities of the sending object to the receiving object, which can be done in any object-oriented language; or implicitly, by the member lookup rules of the language, which requires language support for the feature. Implicit delegation is the fundamental method for behavior reuse in prototype-based programming, corresponding to inheritance in class-based programming. The best-known languages that support delegation at the language level are Self, which incorporates the notion of delegation through its notion of mutable parent slots that are used upon method lookup on self calls, and JavaScript; see JavaScript delegation. Wikipedia →
đź§ Start here: a 6-step reading path
- Read the overview: Delegation (object-oriented programming)A 5-minute orientation
- Pick up a classic book: Software EngineeringThe most-reprinted book on the subject
- Go sideways: Forwarding (object-oriented programming)A closely related topic
- Go sideways: Composition over inheritanceA closely related topic
đź“– Definitions
No dictionary entry for this exact phrase.
🗂️ The subject at a glance
🏆 Landmark papers (most cited)
- No matching papers found.
📚 Books worth reading
Software EngineeringRoger S. Pressman, Bruce Maxim · 1982
Intelligence BulletinUnited States. War Department. Military Intelligence Service · 1942
Bulletin of the United States Army Medical DepartmentUnited States. Army Medical Service. · 1944
Cartesian meditationsEdmund Husserl, Dorion Cairns · 1960
The unified modeling language user guideGrady Booch, James Rumbaugh · 1999
The Conspirators HierarchyJohn Coleman · 1992
Treaty Occupationay ToxicologySuelen Queiroz · 2010
STL tutorial and reference guideDavid R. Musser, Gillmer J. Derge · 1996
Ranked by number of editions on Open Library, a rough measure of how lasting a book is.
đź”— Related topics
- 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…
- Composition over inheritance In object-oriented programming, composition over inheritance (sometimes composition with forwarding or composite reuse) is a common design pattern that…
- Schizophrenia (object-oriented programming) Object schizophrenia or self schizophrenia is a complication arising from delegation and related techniques in object-oriented programming, where self/this…
- Prototype-based programming Prototype-based programming is a style of object-oriented programming in which behavior reuse (known as inheritance) is performed via a process of reusing…
- Inheritance (object-oriented programming) In object-oriented programming, inheritance is the mechanism of basing an object or class upon another object (prototype-based inheritance) or class (class-base…
- 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 inheritanc…
- Decorator pattern In object-oriented programming, the decorator pattern is a design pattern that allows behavior to be added to an individual object dynamically, without…
- Virtual function In object-oriented programming such as is often used in C++ and Object Pascal, a virtual function or virtual method is an inheritable and overridable function…