0Pricing
Dart Academy · Lektion

Null-Shorting-Cascades (?..)

Sicher über nullable Objekte hinweg verketten

Null-Shorting-Cascades (?..) 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.

Die Nullable-Falle

Eine einfache Cascade auf einem Wert, der null sein kann, führt zu einem Fehler. Der Aufruf einer Methode auf null löst einen Fehler aus, bevor irgendeine Zeile ausgeführt wird.

Null-Shorting kennenlernen

Dart bietet eine sichere Variante: die null-shorting cascade, geschrieben als Fragezeichen gefolgt von zwei Punkten. Sie wird nur ausgeführt, wenn das Objekt nicht null ist.

button?..text = 'Save'
      ..onTap = save;

So funktioniert das Shorting

Wenn das Ziel null ist, wird die gesamte Cascade übersprungen und der Ausdruck einfach zu null. Kein Absturz, keine teilweise ausgeführte Arbeit.

Nur der erste Punkt benötigt es

Sie schreiben das question mark nur einmal, bei der ersten Cascade. Die folgenden Zeilen bleiben bei einfachen zwei Punkten, da Dart bereits weiß, dass das Objekt nicht null ist.

obj?..a()
   ..b()
   ..c();

Alles oder nichts

Null-Shorting bedeutet all or nothing: Entweder wird jede Zeile ausgeführt, weil das Objekt existiert, oder keine. Die Kette wird niemals nur teilweise ausgeführt.

Im Vergleich zur einfachen Cascade

Eine einfache cascade setzt voraus, dass das Objekt vorhanden ist. Die Null-Shorting-Variante ist Ihr Sicherheitsnetz, wenn der Typ nullable ist und das Objekt fehlen könnte.

Gibt einen nullable Wert zurück

Da das Ergebnis entweder das Objekt oder null sein kann, hat der gesamte Ausdruck einen nullable-Typ. Behandeln Sie den Rückgabewert als möglicherweise null.

Ein echtes Beispiel

Stellen Sie sich eine Konfiguration vor, die möglicherweise noch nicht existiert. Mit Null-shorting können Sie sie nur dann einrichten, wenn sie vorhanden ist – in einer übersichtlichen Zeile. 🛡️

settings?..theme = dark
        ..save();

Das Zeichen nicht wiederholen

Das question mark in jeder Zeile zu schreiben ist falsch und wird von Dart gemeldet. Die Entscheidung für Shorting erfolgt einmal, direkt am Anfang der Kette.

Passt gut zur Null Safety

Null-Shorting fügt sich in Darts Konzept der null safety ein. Der Compiler kann darauf vertrauen, dass die Zeilen nach dem ersten Punkt nur für ein tatsächlich vorhandenes Objekt ausgeführt werden.

Wann Sie es verwenden sollten

Verwenden Sie Null-Shorting, wenn eine Variable nullable ist und Sie sie konfigurieren möchten, ohne die Cascade mit einer zusätzlichen if-null-Prüfung zu umgeben.

Kurze Überprüfung

Wie schreiben Sie eine Null-Shorting-Cascade korrekt?

Zusammenfassung

Die null-shorting cascade (?..) führt die gesamte Kette nur aus, wenn das Objekt existiert, überspringt bei null alles und benötigt das Zeichen nur einmal. 🎯

Häufig gestellte Fragen

Ist die Lektion „Null-Shorting-Cascades (?..)“ kostenlos?

Ja — der vollständige Text von „Null-Shorting-Cascades (?..)“ 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 „Null-Shorting-Cascades (?..)“?

Sicher über nullable Objekte hinweg verketten 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 „Null-Shorting-Cascades (?..)“?

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. Der Cascade-Operator (..)
  2. Null-Shorting-Cascades (?..)
  3. Spread und Null-aware Spread
  4. Collection-if und -for
← Zurück zu Dart Academy