Was ist neu in der Dart 2.2-Sprache von Google?

Die Dart-Sprache von Google, die einst als potenzieller Ersatz für JavaScript im Browser positioniert war, wurde mit der Veröffentlichung von Dart 2 im August 2018 für die clientseitige Web- und Mobilentwicklung neu gestartet. Dart 2.2 ist jetzt verfügbar.

Dart 2 verfügt über ein verstärktes Typsystem, eine bereinigte Syntax und eine neu erstellte Entwickler-Toolkette. Dart hat eine prägnante Syntax und kann auf einer VM mit einem Just-in-Time-Compiler ausgeführt werden, wobei der Compiler während der mobilen Entwicklung ein zustandsbehaftetes, heißes Nachladen ermöglicht.

Entwickler profitieren auch von schnellen Entwicklungszyklen, in denen Code in Apps, die auf einem Gerät ausgeführt werden, bearbeitet, kompiliert und ersetzt werden kann. Das vorherige Kompilieren von Code ermöglicht laut Google einen schnellen Start.

Dart kann für ARM- und x86-Plattformen zu nativem Code kompiliert werden. Google hat die Sprache verwendet, um Anwendungen für iOS, Android und das Web zu erstellen.

Wo kann man Dart 2 herunterladen?

Sie können die Produktionsversion von Dart 2 von dartlang.org herunterladen.

Neue Version: Was ist neu in Dart 2.2

Veröffentlicht im Februar 2019, Dart 2.2. Verbessert die Leistung von vorab kompiliertem nativem Code (AOT), indem der Overhead statischer Aufrufe reduziert wird. Optimierter Code kann das Ziel jetzt direkt über einen PC-relativen Anruf anrufen. Zuvor mussten mehrere Suchvorgänge in einem Objektpool durchgeführt werden, um eine Zieladresse zu ermitteln. Die Optimierungen sind besonders nützlich, wenn Code viele Konstruktor- und statische Methodenaufrufe enthält, z. B. Flutter-UI-Code, der Widgets erstellt.

Weitere neue Funktionen in Dart 2.2 sind:

  • Literale wurden erweitert, um Mengen zu unterstützen, was eine bequeme neue Syntax bietet. Mengen sind ungeordnete Wertesammlungen, bei denen jeder Wert nur einmal vorkommen kann und Entwickler prüfen können, ob sich ein Wert in einer Menge befindet. Bisher unterstützte die Literal-Syntax nur Listen und Zuordnungen.
  • Die Sprachspezifikation wurde aktualisiert.

Vorherige Version: Was ist neu in Dart 2.1

Das Dart 2.1-Update vom November 2018 bietet eine kleinere Codegröße, eine bessere Benutzerfreundlichkeit für Typfehler, schnellere Typprüfungen und Funktionen zur Verbesserung der Produktivität beim Erstellen von Benutzererfahrungen. Die Codegröße und die Kompilierungszeit wurden für Webbereitstellungen verbessert. Das Dart-Projektteam konzentrierte sich auf die Ausgabegröße von Dartjs, dem Dart-zu-JavaScript-Compiler. Sie berichten über eine 17-prozentige Reduzierung der minimierten Ausgabegröße und eine 15-prozentige Verbesserung der Kompilierungszeit in einem Beispielexperiment.

Unterstützung für int-zu-- doubleUmwandlung der Zwischenzeit bedeutet Dart 2.1 entnehmen kann , wo eine ganze Zahl leise als ausgewertet werden muss doubleWert. Michael Thomsen von Google, Produktmanager für Dart und das Flutter Mobile Toolkit, sagte, dass Flutter-Entwickler häufig von Analysefehlern betroffen sind, wenn eine API eine erwartet double, die Entwickler jedoch eine angeben int. Die neue Konvertierungsfunktion beseitigt die Verwirrung.

Weitere neue Funktionen in Dart 2.1 sind:

  • In Dart 2.0 unvollständige Typprüfungen zur Kompilierungszeit wurden in Version 2.1 abgeschlossen. Die vorherige Unvollständigkeit könnte zu Usability-Problemen geführt haben, bei denen fehlerhafter Quellcode ohne Fehler kompiliert werden konnte.
  • Die Kosten für Typprüfungen wurden für AOT-kompilierten Code und Code, der in der VM mit JIT-Kompilierung ausgeführt wird, reduziert. Dies sollte dazu beitragen, die Leistung für Flutter-Entwickler zu verbessern.
  • Es wird eine neue Syntax für Mixins eingeführt, mit einem mixinSchlüsselwort zum Definieren von Klassen, die nur als Mixins verwendet werden können. Außerdem können Mixins jetzt auch andere Klassen erweitern  Objectund Methoden in ihrer Oberklasse aufrufen.

Thomsen gab auch einen Einblick in das, was Dart-Benutzer 2019 sehen könnten:

  • Weitere Leistungsverbesserungen, einschließlich besserer Unterstützung für Multicore-Prozessoren und weiterer Reduzierung der Codegröße, um die Download- und Startzeiten zu verbessern.
  • Verfeinerungen konstanter Ausdrücke und Unterstützung für ein neues SetLiteral.
  • Weitere Optimierungen zur Unterstützung beim Erstellen von Benutzeroberflächen, z. B. Bedingungen in Widget-Listen, Erweitern von Objektsammlungen zu anderen Objekten und Entfernen der Notwendigkeit, Anweisungen mit Semikolons zu beenden.

Vorherige Version: Was ist neu in Dart 2.0

Dart 2.0 wurde im August 2018 veröffentlicht und bietet eine Sprache, ein Framework und Komponenten, mit denen die Boilerplate reduziert und Entwickler sich auf die Geschäftslogik konzentrieren können. Teil der Plattform sind auch Tools, mit denen Fehler frühzeitig erkannt und kleiner, schneller Laufzeitcode bereitgestellt werden können. Dart Version 2 konzentriert sich auf drei Bereiche:

  • Die Sprache stärken und straffen.
  • Aufbau von Unterstützung für Web- und mobile Frameworks.
  • Erweiterung von Tools und Komponenten, die die Verwendung der Sprache durch Google unterstützen, nach außen.

Zu den neuen Funktionen in Dart 2.0 gehören:

  • Starke Eingabe, um Fehler früher zu erkennen, die Qualität zu verbessern und Anwendungen zu verbessern, die von großen Teams erstellt wurden. Das Typsystem in Dart 2 erkennt früher im Entwicklungszyklus mehr Fehler.
  • Typinferenz wird für Felder, Methoden, lokale Variablen und die meisten generischen Typargumente bereitgestellt.
  • Das Kern-SDK verfügt über Bibliotheken für den Zugriff auf moderne Browser-APIs.
  • Das AngularDart 5-Webframework, das vom Angular-Framework selbst inspiriert ist, ist enthalten.
  • Das Dart SDK mit einem Paketmanager, der mit der Dart-Paketsite zusammenarbeitet. Es enthält außerdem einen statischen Analysator, einen Linter und Tools für die Webdokumentation und die Code-Formatierung.
  • Zugriff auf 100 neue Klassen, einschließlich Datum, Uhrzeit und Google Material-Komponenten.
  • Unterstützung für den Visual Studio Code-Editor von Microsoft über die Dart Code Extension.
  • Die DartPad Scratchpad-Anwendung wurde für Dart 2 aktualisiert.
  • Durch das Definieren der Benutzeroberfläche als Code wird der Kontextwechsel zwischen einer UI-Markup-Sprache und der Programmiersprache reduziert.
  • Die Sprache verfügt über webspezifische Bibliotheken wie dart:htmlund ein vollständiges Webframework.