EMZETT.
Login

Kurz: Dart (Google, 2011) ist eine moderne, objektorientierte Sprache mit C-ähnlicher Syntax, statischer Typisierung und Null-Sicherheit.

Teil des Kurses Dart

Kapitel 1 von 8 im Kurs Dart. Mit Fortschritt, Quiz und Zertifikat auf der Lernseite.

Was ist Dart?

Dart (Google, 2011) ist eine moderne, objektorientierte Sprache mit C-ähnlicher Syntax, statischer Typisierung und Null-Sicherheit. Sie ist die Sprache hinter Flutter, dem Framework, mit dem man aus einer Codebasis Apps für Android, iOS, Web, Windows, macOS und Linux baut. Dart kompiliert zu schnellem nativem Code (AOT) und zu JavaScript, bietet im Entwicklungsmodus aber Hot Reload: Änderungen erscheinen in der laufenden App in Sekundenbruchteilen.

Außerdem schreibt man in Dart Kommandozeilenprogramme und Server (shelf, dart_frog).

Installation und Ausführen

Installiere das Dart SDK (dart.dev) oder Flutter (enthält Dart). Online probierst du Code im DartPad (dartpad.dev).

dart main.dart              # Datei ausführen
dart create meine_app       # Projekt anlegen
dart run                    # Projekt starten
dart test                   # Tests
dart format .               # Code formatieren
dart analyze                # statische Analyse
dart pub add http           # Paket hinzufügen
dart compile exe main.dart  # native ausführbare Datei

Das erste Programm

main.dart

void main() {
  print('Hallo Dart!');
  var name = 'Mia';
  print('Hallo, $name!');
  print('2 + 3 = ${2 + 3}');
  print('Länge: ${name.length}');
  print("Doppelte Anführungszeichen gehen auch");
}

Ausgabe:

Hallo Dart!
Hallo, Mia!
2 + 3 = 5
Länge: 3
Doppelte Anführungszeichen gehen auch
  • main() ist der Einstiegspunkt
  • Anweisungen enden mit ;
  • $variable und ${ausdruck} setzen Werte in Strings ein
  • Strings stehen in '...' oder "..."
  • Kommentare: // ..., /* ... */, Dokumentation /// ...

Variablen

void main() {
  var zahl = 42;              // Typ int wird erschlossen
  int alter = 17;             // Typ ausdrücklich
  double groesse = 1.68;
  String name = 'Mia';
  bool aktiv = true;
  final heute = 'Montag';     // einmal zuweisen, zur Laufzeit
  const pi = 3.14159;         // Konstante zur Übersetzungszeit
  dynamic beliebig = 5;       // Typ kann wechseln (vermeiden)
  beliebig = 'jetzt Text';
 
  print('$zahl $alter $groesse $name $aktiv $heute $pi $beliebig');
  print('${zahl.runtimeType} ${groesse.runtimeType} ${name.runtimeType} ${aktiv.runtimeType}');
 
  int? vielleicht;            // nullable: darf null sein
  print(vielleicht);
  vielleicht = 5;
  print(vielleicht + 1);
  var a = 1, b = 2;
  (a, b) = (b, a);            // Tausch mit Records (Dart 3)
  print('$a $b');
}

Ausgabe:

42 17 1.68 Mia true Montag 3.14159 jetzt Text
int double String bool
null
6
2 1

Merke

  • Dart ist die Sprache von Flutter: eine Codebasis für Mobil, Web und Desktop
  • main() als Einstieg, print, String-Interpolation $x / ${...}
  • var, final, const; typisiert und null-sicher (int?)
  • Werkzeuge: dart run, dart analyze, dart format, dart pub add

Übungsaufgabe

Gib Name, Alter und das Geburtsjahr aus.

Quiz zur Selbstkontrolle

Weiter im Kurs

Weiter: Typen, Strings, Null-Sicherheit und Kontrollfluss

Alle Kapitel: Dart im Überblick