Delegációminta
From Wikipedia, the free encyclopedia
Szoftverfejlesztésben a delegációminta az objektumorientált programtervezési mintákhoz tartozik. Lehetővé teszi egy objektum-összetétel számára, hogy ugyanolyan jellegű kód-újrafelhasználást érjen el, mint például az öröklődés.
Delegálás során egy kérés úgy kezelődik, hogy egy objektum ezt a kérést egy második objektumra (a meghatalmazottra) átruházza. A meghatalmazott az csak egy segédobjektum az eredetinek a környezetével. A delegálás nyelvi szintű támogatásával ezt úgy hajtják végre implicit módon, hogy a "self" kulcsszó segítségével az eredeti (küldő) objektumra utalnak, és nem a megbízottra (a fogadó objektumra). A delegációmintában ezt inkább úgy érik el, hogy az eredeti objektumot közvetlenül a meghatalmazottnak adjuk át, például egy metódus változójaként.[1] Vegyük figyelembe, hogy a "delegálást" gyakran helytelenül használják a továbbítás pontos fogalmaként, amikor a küldő objektum egyszerűen a fogadó objektum megfelelő tagját használja.
Vegyük figyelembe, hogy ez a cikk inkább a "kérések küldését/fogadását" mutatja be két objektum között, és nem az "objektum/meghatalmazott fogadását". Kihangsúlyozza, hogy mely objektumok küldik és fogadják a delegálási hívást, és nem pedig az eredeti hívást.