Eckdaten
Zielgruppe: App-Entwickler*innen, Webentwickler*innen | Dauer 2 Tage | 9:00–17:00 Uhr | Trainer: Hecker Consulting | Online-Seminar | Teilnehmerzahl: 1-12
Seminarbeschreibung
Flutter ermöglicht Entwicklern, mobile Anwendungen für verschiedene Plattformen, z.B. für iOS, für Android oder für's Web, auf Basis einer einzigen Codebasis zu erstellen. Das von Google entwickelte Open Source Software Development Kit spart nicht nur Entwicklungszeit, sondern verbessert auch Konsistenz und Qualität der Anwendungen. Kein Wunder, dass sich Flutter bereits als Quasi-Standard für die hybride mobile Entwicklung etabliert hat.
Der Live-Remote-Workshop liefert alles, was Programmierer zur App-Entwicklung mit Dart und Flutter benötigen. Auch fortgeschrittenen Themen wie asynchrone Operationen, REST-APIs oder Optimierung per State Management werden anhand praktischer Beispiele erläutert.
Die Schulung findet in deutscher Sprache als Online-Schulung über eine Videokonferenz-Software im Webbrowser statt. Nach erfolgreichem Abschluss des Kurses wird ein Teilnahme Zertifikat ausgegeben.
Agenda der IT-Schulung
Grundlagen von Dart für Flutter
- Einstiegspunkt in eine Dart-Anwendung
- Überblick über Datentypen: Zahlen und Strings
- Überblick über Datentypen: Bool, Listen und Maps
- Unterschied zwischen var und dynamic
- Funktionen in Dart
- Einführung in Klassen und Objekte
Einführung in Flutter
- Nutzung verschiedener Flutter-Ressourcen
- Installation von Flutter und Einrichtung von Android Studio auf Mac und Windows
- Auswahl der richtigen Flutter-Version
- Ausführung der Hello World-App auf Mobilgeräten, Desktop und Web
- Anatomie eines Flutter-Projekts
- Verständnis des Counter App-Codes
- Einstieg in Android Studio
Grundlegende Bausteine in Flutter
- Wichtige Flutter-Bausteine
- Erstellung grundlegender Widgets
- Platzierungen und Ausrichtungen
- Struktur: Flexible und Expanded Widgets
- Erstellung eigener benutzerdefinierter Widgets
- Aufbau dynamischer Listen
- Zerlegung von Designs in Code
- Weitere Beispiele für Design-Zerlegung
Interaktivität in Flutter
- Was ist der Zustand (State)?
- Erstellung des ersten zustandsbehafteten Widgets
- Widget-Variablen versus Zustandsvariablen
- Wann zustandslose oder zustandsbehaftete Widgets verwenden?
- Lebenszyklus eines zustandsbehafteten Widgets
- Zustandsbehaftetes Hot Reload
- Einführung in Buttons
- Tipp- und Gestenerkennung
- Nutzereingaben einholen und validieren
- Erstellung mehrzeiliger Textfelder
- Navigation zwischen Bildschirmen
- Datenweitergabe bei der Navigation
- Navigation über benannte Routen
- Routenersatz mit dem Navigator
Alles über Pubspec
- Organisation von Stilen und Farben
- Verständnis der Struktur einer pubspec.yaml-Datei
- Erkundung von pub.dev
- Unterschied zwischen Plugins und Paketen
- Hinzufügen von Plugins und Paketen aus externen Quellen
- Modellierung von Entitäten in Dart
- Generics in Dart
- JSON: Serialisierung und Deserialisierung
- Lesen von Daten aus einer JSON-Datei
- UI-Verbesserung mit Box Constraints
- Aufrufen einer Methode der Elternklasse aus der Kindklasse
Die Zukunft der Programmierung
- Umgang mit asynchronen Operationen in Dart
- Einführung in APIs und Nutzung von Postman
- Deserialisierung von JSON mit dem JsonSerializable-Paket
- Integration einer REST-API
- FutureBuilder für Futures
- Repository-Muster
- Grid-Ansicht in einem ModalBottomSheet
- Anzeige des ausgewählten Bildes im ChatInput
- Ausnahmebehandlung
- Erstellung abgerundeter UI-Elemente
Datenverarbeitung in Flutter
- Warum State Management notwendig ist
- Erkundung des Provider-Ansatzes
- Daten-Caching
- Statische Initialisierer
- Change Notifiers in Flutter
- Erstellung einer dynamischen Homepage
- Responsive UI-Design für das Web