0Pricing
Dart Academy · Lektion

Anonyme Funktionen und Closures

Variablen in Inline-Funktionen erfassen

Anonyme Funktionen und Closures ist eine kostenlose Dart Academy-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Dart Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Dart Academy-Kurs umfasst insgesamt 4 Lektionen.

Funktionen ohne Namen

Manchmal benötigen Sie eine Funktion nur einmal. Eine anonyme Funktion hat keinen Namen und wird genau dort geschrieben, wo Sie sie verwenden. ✨

Die Grundform

Eine anonyme Funktion besteht lediglich aus Parametern und einem Rumpf, ohne einen vorangestellten Namen. Sie können sie in einer Variable speichern.

var greet = (String n) {
  print('Hi ' + n);
};

Die gespeicherte Funktion aufrufen

Nach dem Speichern rufen Sie die Funktion über die Variable genau wie jede benannte Funktion mit runden Klammern auf.

greet('Ada');

Eine inline übergeben

Meistens übergeben Sie eine anonyme Funktion direkt an eine Methode. Hier ruft forEach sie für jedes Element auf.

[1, 2, 3].forEach((n) {
  print(n * 2);
});

Anonyme Pfeilfunktionen

Bei einem Funktionsrumpf mit einem Ausdruck können Sie anonyme Funktionen mit dem Pfeil kombinieren, um den Code kompakt zu halten.

var doubled = [1, 2, 3].map((n) => n * 2);

Was ist eine Closure?

Eine Closure ist eine Funktion, die sich Variablen aus ihrem Erstellungsort merkt, selbst nachdem dieser äußere Gültigkeitsbereich beendet wurde.

Eine Variable erfassen

Die innere Funktion unten erfasst step. Bei jedem späteren Aufruf der zurückgegebenen Funktion verwendet sie weiterhin diesen Wert.

Function adder(int step) {
  return (int x) => x + step;
}

Jede Closure ist eigenständig

Rufen Sie die Factory zweimal auf, behält jede zurückgegebene Closure einen eigenen erfassten Wert. Sie beeinflussen einander nicht.

var add5 = adder(5);
var add10 = adder(10);

Closures speichern Zustand

Eine erfasste Variable kann sich zwischen Aufrufen ändern. Dadurch kann sich eine Closure den Fortschritt wie ein kleiner Zähler merken.

int count = 0;
var tick = () => ++count;

Warum das wichtig ist

Callbacks, Event-Handler und Listenmethoden nutzen alle Closures. Sie ermöglichen es, Verhalten gemeinsam mit den benötigten Daten zu bündeln.

Halten Sie sie klein

Inline-Closures spielen ihre Stärke aus, wenn sie kurz sind. Wird eine Closure komplex, geben Sie ihr einen aussagekräftigen Namen, damit andere sie leicht lesen können.

Kurztest

Wodurch wird eine Funktion zu einer Closure?

Zusammenfassung

Sie haben anonyme Funktionen für einmalige Verwendungen sowie Closures kennengelernt, die umgebende Variablen erfassen und so ihren eigenen Zustand mitführen. 🎯

Häufig gestellte Fragen

Ist die Lektion „Anonyme Funktionen und Closures“ kostenlos?

Ja — der vollständige Text von „Anonyme Funktionen und Closures“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Dart Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Dart Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Anonyme Funktionen und Closures“?

Variablen in Inline-Funktionen erfassen Du übst Dart Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Dart Academy zu starten?

Keine Vorkenntnisse erforderlich. Dart Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.

Wie lange dauert die Lektion „Anonyme Funktionen und Closures“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Dart Academy-Lektion Code schreiben und ausführen?

Ja. Jede Dart Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Pfeilsyntax für einzeilige Funktionen
  2. Anonyme Funktionen und Closures
  3. Nullable-Typen und das Fragezeichen
  4. Null-aware Operatoren: ?., ?? und !
← Zurück zu Dart Academy