Call back Funktion

Call back Funktion

Eine Rückruffunktion (englisch callback function) bezeichnet in der Informatik eine Funktion, die einer anderen Funktion als Parameter übergeben wird, und von dieser unter gewissen Bedingungen aufgerufen wird. Dieses Vorgehen folgt dem Entwurfsmuster der Inversion of Control.

Dadurch wird es möglich, Funktionen allgemein zu definieren und erst beim Aufrufen der Funktion durch Angabe der Rückruffunktion das Verhalten exakt zu bestimmen. Häufig bekommt eine Rückruffunktion gar keinen Namen, sondern wird als anonyme Funktion direkt beim Aufruf definiert (siehe auch Lambda-Kalkül). Über Rückruffunktionen erreicht man eine lose Kopplung zwischen einzelnen Komponenten.

Beispiel

Es soll eine Funktion apply_to geschrieben werden, die eine beliebige andere Funktion auf eine Liste von Werten anwendet und eine Liste der Ergebnisse zurückgibt. Eine Umsetzung in Pseudocode:

function apply_to (Funktion, Werte):
    var Ergebnis; // Liste für die Ergebnisse

    foreach w in Werte do // für alle Werte ...
        e = Funktion (w); // rufe die Rückruffunktion ...
        Ergebnis[] = e;   // und hänge das Resultat an die Ergebnisliste an.
    end;

    return Ergebnis;
end apply_to;

Diese Funktion kann jetzt folgendermaßen verwendet werden:

function verdoppeln (Wert): // dies ist eine Rückruffunktion
    return Wert * 2;
end verdoppeln;

function quadrat (Wert): // dies ist eine andere Rückruffunktion
    return Wert * Wert;
end quadrat;

// Anwenden der Funktionen auf eine Liste:

Werte = (1, 2, 3, 4);

Doppelte_Werte   = apply_to(verdoppeln, Werte); //ergibt (2,4,6,8)
Quadrierte_Werte = apply_to(quadrat, Werte);    //ergibt (1,4,9,16)

Oder, kürzer, in Lambda-Notation:

Werte = (1, 2, 3, 4);

Doppelte_Werte   = apply_to(lambda x: x * 2, Werte); //ergibt (2,4,6,8)
Quadrierte_Werte = apply_to(lambda x: x * x, Werte); //ergibt (1,4,9,16)

Siehe auch

Weblinks


Wikimedia Foundation.

Игры ⚽ Нужен реферат?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • In the Air Tonight — Phil Collins Veröffentlichung Vereinigtes Konigreich 5. Januar 1981 Länge 4:57 …   Deutsch Wikipedia

  • Novel — For other uses, see Novel (disambiguation). Not to be confused with Novell. New novels in a Oldenburg bookshop, February 2009 …   Wikipedia

  • List of albums containing a hidden track — This list contains the names of albums that contain a hidden track and also information on how to find them. Please note that not all printings of an album contain the same track arrangements, so your copy of album X may or may not have the… …   Wikipedia

  • Kulning — Kulning, or herding calls (called kauking and kaukning in some parts of Norway, in the province of Dalarna in Sweden and the former Norwegian provinces in Sweden Jämtland and Härjedalen, also kulokker, kyrlokker or a lockrop) is a domestic… …   Wikipedia

  • Abkürzungen/Luftfahrt/L–R — Dies ist der vierte Teil der Liste Abkürzungen/Luftfahrt. Liste der Abkürzungen Teil 1 A A Teil 2 B–D B; C; D Teil 3 E–K …   Deutsch Wikipedia

  • DIN 66020 — Die Empfehlung V.24 der ITU T ist in erster Linie dazu gedacht, eine Schnittstelle für die Datenfernübertragung zu standardisieren. Dazu beschreibt sie Schnittstellenleitungen und deren Funktion in einem Datenübertragungssystem zwischen einer… …   Deutsch Wikipedia

  • DIN 66020-1 — Die Empfehlung V.24 der ITU T ist in erster Linie dazu gedacht, eine Schnittstelle für die Datenfernübertragung zu standardisieren. Dazu beschreibt sie Schnittstellenleitungen und deren Funktion in einem Datenübertragungssystem zwischen einer… …   Deutsch Wikipedia

  • V.24 — Die Empfehlung V.24 der ITU T ist in erster Linie dazu gedacht, eine Schnittstelle für die Datenfernübertragung zu standardisieren. Dazu beschreibt sie Schnittstellenleitungen und deren Funktion in einem Datenübertragungssystem zwischen einer… …   Deutsch Wikipedia

  • V24 — Die Empfehlung V.24 der ITU T ist in erster Linie dazu gedacht, eine Schnittstelle für die Datenfernübertragung zu standardisieren. Dazu beschreibt sie Schnittstellenleitungen und deren Funktion in einem Datenübertragungssystem zwischen einer… …   Deutsch Wikipedia

  • Character mask — Part of a series on Marxism …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”