Dart Kurs Weiter zu Listen

Lektion 12 - Flutter Einstieg & Framework-Update

Was in Flutter neu dazukommt

Nach Dart und den ersten Widgets sortieren wir Flutter noch einmal sauber: Was ist Framework, was ist Dart, was ist UI, was ist State, und welche Denkweise ist anders als bei Konsolenprogrammen?

1. Dart vs. Flutter

DartFlutter
ProgrammierspracheFramework fuer grafische Apps
Variablen, Klassen, FunktionenWidgets, Layout, State, Navigation
Konsolenprogramme mit printOberflaechen mit Widget-Baum
dart runflutter run

2. Was ein Framework macht

Ein Framework gibt dir eine Struktur vor. Flutter sagt dir nicht nur, welche Funktionen es gibt, sondern auch, wie eine App aufgebaut wird: MaterialApp, Scaffold, Widgets, State und Build-Methode.

MaterialApp(
  home: Scaffold(
    appBar: AppBar(...),
    body: ...,
  ),
)

3. Was neu dazukommt

In Konsolenprogrammen liest du Eingaben und gibst Text aus. In Flutter reagiert die App auf Klicks, baut Layouts und zeichnet die Oberflaeche neu, wenn State geaendert wird.

setState(() {
  counter++;
});

State ist der aktuelle Zustand, zum Beispiel Counter, Auswahl oder geladene Daten.

4. Der Build-Zyklus

Die build-Methode beschreibt, wie die Oberflaeche fuer den aktuellen Zustand aussehen soll. Wenn sich State aendert, wird build erneut ausgefuehrt.

State aendert sich
  -> setState wird aufgerufen
  -> Flutter ruft build erneut auf
  -> Widget-Baum wird neu beschrieben
  -> UI wird aktualisiert

Du veraenderst nicht direkt einzelne Bildschirmteile. Du beschreibst die UI neu.

5. Dateien und Verantwortung

Datei/OrdnerAufgabe
lib/main.dartStartpunkt und Hauptcode deiner App
pubspec.yamlAbhaengigkeiten, Assets, App-Name
test/Tests fuer Widgets und Logik
android/ ios/ web/Plattform-spezifische Dateien

6. Uebungen

  1. Oeffne ein Flutter-Projekt und finde main.dart.
  2. Markiere MaterialApp, Scaffold, AppBar, body und setState.
  3. Erklaere in eigenen Worten, warum Flutter keinen HTML-DOM nutzt.
  4. Beschreibe den Ablauf: Klick auf Button aendert State und UI zeigt neuen Wert.
Weiter zu Listen in Flutter