Zum Hauptinhalt Zur Navigation

Programmiersprache: Dart 3.0 bekommt komplette Null-Safety

Zwar bietet Dart in Teilen bereits eine sogenannte Null-Safety. Mit Version 3.0 soll das aber komplett erzwungen werden.
/ Sebastian Grüner
6 Kommentare News folgen (öffnet im neuen Fenster)
Dart 3 bekommt eine verpflichtende Null-Safety. (Bild: Dartlang)
Dart 3 bekommt eine verpflichtende Null-Safety. Bild: Dartlang

Einige der moderneren Programmiersprachen wie Kotlin, Rust, C# oder Swift bieten bereits seit längerem eine sogenannte Null-Safety. Das heißt, über das Type-System wird bereits überprüft, ob Werte null sein dürfen oder nicht, was Null-Fehler verhindern soll. Zwar verfügt auch die Programmiersprache Dart bereits über entsprechende Funktionen, für das kommende Dart 3 soll dies aber vollständig erzwungen werden(öffnet im neuen Fenster) , wie der für Dart und Flutter zuständige Product Manager Michael Thomsen ankündigt.

Konkret können "non-nullable" Variablen in Dart standardmäßig niemals den Wert null zugewiesen bekommen. Davon soll es anders als in anderen Sprachen auch keine Ausnahmen geben, wofür wiederum viele Veränderungen an Programmen und Abhängigkeiten notwendig sind. Schließlich ist diese Eigenschaft eben nicht von Beginn an Teil der Sprache selbst gewesen.

Die initiale Umsetzung der Null-Safety in Dart hat das Team erstmals vor rund drei Jahren mit Dart 2.12 veröffentlicht. Seitdem unterstützt die Sprache in Bezug darauf drei Modi: Ohne Null-Safety, teilweise Null-Safety oder vollständige Null-Safety. Mit Dart 3 wird nur noch letzteres unterstützt. Mit Hilfe der Null-Safety können aber eben nicht nur typische Fehler vermieden werden. Laut der Ankündigung ist es dem Team außerdem möglich, auf Grundlage der Null-Safety Optimierungen im Compiler und der Laufzeitumgebung von Dart umzusetzen.

Von der verpflichtenden Null-Safety betroffen sein könnten vor allem Apps, die mit dem Dart-Framework Flutter umgesetzt werden. Laut Telemetrie-Daten liefen aber bereits 85 Prozent der Flutter-App-Ausführungen mit Null-Safety, wie es in der Ankündigung heißt. Die restlichen 15 Prozent müssen also noch migriert werden. Als Beispiel für eine erfolgreiche Migration verweist das Team auf eine App von BMW, dessen Dart- und Flutter-Team etwa 300 Personen umfasst.


Relevante Themen