Dart: Die Programmiersprache vorgestellt

Programmiersprachen gibt es fast wie Sand am Meer. Unter den zahlreichen Vertretern findet sich auch die ziemlich neue Programmiersprache Dart. Wenn man verschiedene Internet-Programmiersprachen vergleicht, sind grundlegende Programmierparadigmen meist sehr ähnlich. Erst in der Tiefe und in den Details erschließen sich Unterschiede.

Aktuell entwickelte Programmiersprachen widmen sich oft der Realisierung von mobilen Anwendungen für Smartphones oder Tablets. Dabei soll die genutzte Sprache mit möglichst wenig Syntax eine gute Nutzererfahrung (UX) ermöglichen und zugleich sparsam mit dem verfügbaren Speicher der Endgeräte umgehen. Wo Googles Programmiersprache Dart dabei einzuordnen ist und was sie so draufhat, erfahren Sie im Folgenden.

Was ist die Programmiersprache Dart?

Dart ist eine Programmiersprache, die hauptsächlich von Google entwickelt wurde und wird. Sie ist ECMA-standardisiert (die ECMA ist eine internationale Organisation zur Normung von Informations- und Kommunikationssystemen und Unterhaltungselektronik). Programmierung in Dart soll eine attraktive Alternative zu JavaScript in modernen Webbrowsern sein. Nach Auffassung der Dart-Entwickler lassen sich die Schwächen von JavaScript nicht mehr durch Weiterentwicklung beheben.

Die Dart-Sprache wurde ab 2010 entwickelt und im Jahr darauf erstmals vorgestellt. Da Browser nicht nativ damit umgehen konnten und können und JavaScript in allen modernen Browsern ausgeführt werden kann, gibt es den Compiler Dart2js, also „Dart zu JavaScript“. Die Sprache Dart ähnelt etablierten objektorientierten Programmiersprachen, zu denen Swift, C# oder Java gehören, die sich bestimmten Programmierparadigmen unterordnen. Die Regeln zur Kombination von festgelegten Zeichen – die Syntax – ähneln der Programmiersprache C. Diese „Verwandtschaft“ macht den Zugang recht einfach, so dass man einsteigen kann, ohne große Sprachbarrieren überwinden zu müssen.

Wie ist Dart aufgebaut?

Die Programmiersprache Dart verfügt über Variablen, Operatoren, bedingte Anweisungen, Schleifen, Funktionen, Klassen, Objekte und Aufzählungen. Sie bietet Vererbung und generische Programmierung als wichtige Konzepte einer objektorientierten Sprache an – vieles kommt einem erfahrenen Programmierer bekannt vor. Zum ersten Ausprobieren steht die kostenlose OpenSource-Plattform DartPad zur Verfügung, auf der man sich an die Programmierung mit der Dart-Sprache herantasten kann und auch gleich ein paar Beispiele als Drop-down-Menü vorfindet.

Jedes in Dart geschriebene Programm beginnt mit dem Aufruf der „Main“-Funktion.

void main() {
}

Als Beispiel eine Festlegung einer Variable und die Ausführung einer Bedingungsabfrage:

void main() {
  var tier = 'Pferd';
  if (tier == 'Katze' || tier == 'Hund') {
    print('Das Tier ist ein Haustier.');
    } else if (tier == 'Elefant') {
    print('Das ist eine riesiges Tier.');  
   } else {
    print('Das Tier ist kein Haustier.');
   }
}

Das erzeugt mittels Dart-Pad die Ausgabe auf dieser Konsole:

Ersetzen Sie in der Variable „tier“ (var tier) das „Pferd“ einmal durch „Katze“, „Hund“ oder „Elefant“ und beobachten Sie die Veränderungen in der Ausgabe auf der Konsole rechts. Ausführlicher stellen wir die Dart-Programmierung in unserem Dart-Tutorial vor.

Wofür wird Dart eingesetzt?

Entwicklungen mit der Sprache Dart dienen zuallererst Geräten, die mit dem Internet kommunizieren, also Smartphones, Tablets und Laptops, aber auch Server. Vor allem für Programmieranfänger war es bisher wenig realistisch, mobile oder webbasierte Applikationen selbst zu entwickeln. Der Ansatz der Programmiersprache Dart zielt darauf ab, das Programmieren solcher Apps einfacher zu gestalten. Googles eigenes Software Development Kit (SDK) Flutter ist mit Dart programmiert, ebenso wie das bekannte Werbetool Google Ads. Weitere Beispiele sind die Webseiten der New York Times oder von GROUPON. Mit dem bereits genannten DartPad steht eine komfortable Möglichkeit zur Verfügung, sich einer Programmiersprache mit der Methode „Try and Error“ zu nähern und sich so grundlegende Kenntnisse anzueignen.

Was sind die Stärken und Schwächen von Dart?

Dart bringt eine Reihe von Vorteilen, doch auch ein paar Nachteile mit sich:

Vorteile

Die Dart-Sprache ist Open Source und somit für jedermann kostenlos zugänglich. Hinter Dart steht Google, ein großes Unternehmen – das bietet eine langfristige Perspektive für die Weiterentwicklung der Sprache. Dart ist für Programmierer aufgrund ihrer Syntax leicht erlernbar. Die Entwickler haben viele umständliche Begriffswelten anderer Sprachen vereinfacht und intelligent zusammengefasst. Wer schon einmal Bekanntschaft mit C# gemacht hat, wird sehr schnell mit Dart zurechtkommen. Die Programmiersprache ist für das Web entwickelt worden. Durch direkte (und sehr schnelle) Übersetzung in JavaScript funktioniert Dart auf allen modernen mobilen und Desktop-Browsern. Zur Entwicklungsarbeit-Arbeit genügt ein einfacher Texteditor. Dazu sind jedoch tiefergehende Kenntnisse der Programmiersprache nötig. Besser arbeitet es sich mit speziellen Editoren wie Android Studio (Google) oder Visual Studio Code (Microsoft).

Nachteile

Die Dart-Programmiersprache ist relativ neu, was zur Folge hat, dass die sich untereinander helfende Community noch nicht so groß ist und Lernmaterialien nicht in dem Umfang wie für JavaScript zur Verfügung stehen. Es darf aber angenommen werden, dass sich das recht zügig verbessern wird. Die Erstinstallation eines Editors und des dazugehörigen technischen Hintergrunds auf einem Rechner ist zwar gut dokumentiert, aber mit Tücken behaftet. Kritiker bemängeln zudem, dass schon wieder eine neue Sprache auf den Markt gebracht wurde, anstatt bestehende zu perfektionieren.

Wie unterscheidet sich Dart von anderen Programmiersprachen?

Ein wesentlicher Unterschied zu anderen Programmiersprachen besteht darin, dass Googles Dart einfacher lesbar ist, da die Syntax nahe an der menschlichen Sprache gehalten wurde. Es gibt weniger Befehle, jedoch mehr Möglichkeiten. Bezeichnungen für Variablen kann man frei wählen und somit den selbst geschriebenen Code verständlich halten. Das spart auch viele zusätzliche Kommentare. Die Verwendung von Leerzeichen, Tabs und Zeilenumbrüchen ist beliebig gestattet. Damit können Sie als Programmierer den Code gut strukturieren, was letztlich vom Compiler ignoriert wird. Ausnahmen sind Schlüsselwörter, Variablen- oder Funktionsnamen – also alle feststehenden Begrifflichkeiten innerhalb der Dart-Sprache. Dazu gehören z. B. „if“, „else“, „string“, „void“ und weitere. Letztlich wird auch zwischen Groß- und Kleinschreibung unterschieden, was den Spielraum für Benennungen deutlich erweitert.

Die Entwicklerplattform Stack Overflow hat 2019 in einer Analyse über die beliebtesten Programmiersprachen festgestellt, dass Dart mit 66,3 Prozent kurz hinter JavaScript (66,8 Prozent) lag.