Zum Hauptinhalt springen Zur Suche springen Zur Hauptnavigation springen
Dekorationsartikel gehören nicht zum Leistungsumfang.
Flutter und Dart
Das umfassende Handbuch für die professionelle App-Entwicklung - Ausgabe 2025
Buch von Marc Marburger (u. a.)
Sprache: Deutsch

49,90 €*

inkl. MwSt.

Versandkostenfrei per Post / DHL

Lieferzeit 2-3 Werktage ab Escheinungsdatum. Dieses Produkt erscheint am 08.07.2025

Produkt Anzahl: Gib den gewünschten Wert ein oder benutze die Schaltflächen um die Anzahl zu erhöhen oder zu reduzieren.
Kategorien:
Beschreibung

Wenn es um plattformübergreifende App-Entwicklung geht, macht Flutter Träume wahr: GUI-Bibliotheken, die das beste aus der Android- und der iOS-Welt flexibel zur Auswahl stellen, starke Tools und moderne Sprachfeatures - erleben Sie selbst, wie produktiv und elegant sich damit arbeiten lässt. Hier finden Sie alles, was Sie für den Einstieg und die professionelle Programmierung brauchen. Lernen Sie das Framework Flutter und die Sprache Dart mit all ihren Stärken kennen. Die Autoren führen in alle wichtigen Konzepte ein und vergessen dabei nicht, auf Fallstricke hinzuweisen. Mit vielen Beispielen, konkreten Praxistipps und Sinn für die wichtigen Details.

Aus dem Inhalt:

  • Installation und Werkzeuge
  • Abhängigkeiten verwalten
  • Widgets, Themes und Styles
  • Hot Reload und effiziente Workflows
  • Lokalisierung und Barrierefreiheit
  • Releases für iOS und Android
  • Flutter Modules, Natives einbetten und C-Schnittstellen
  • Unit-Tests, Widgets testen
  • Logging und Analytics

Wenn es um plattformübergreifende App-Entwicklung geht, macht Flutter Träume wahr: GUI-Bibliotheken, die das beste aus der Android- und der iOS-Welt flexibel zur Auswahl stellen, starke Tools und moderne Sprachfeatures - erleben Sie selbst, wie produktiv und elegant sich damit arbeiten lässt. Hier finden Sie alles, was Sie für den Einstieg und die professionelle Programmierung brauchen. Lernen Sie das Framework Flutter und die Sprache Dart mit all ihren Stärken kennen. Die Autoren führen in alle wichtigen Konzepte ein und vergessen dabei nicht, auf Fallstricke hinzuweisen. Mit vielen Beispielen, konkreten Praxistipps und Sinn für die wichtigen Details.

Aus dem Inhalt:

  • Installation und Werkzeuge
  • Abhängigkeiten verwalten
  • Widgets, Themes und Styles
  • Hot Reload und effiziente Workflows
  • Lokalisierung und Barrierefreiheit
  • Releases für iOS und Android
  • Flutter Modules, Natives einbetten und C-Schnittstellen
  • Unit-Tests, Widgets testen
  • Logging und Analytics
Über den Autor
Marc Marburger hat langjährige Erfahrung in der App- und Softwareentwicklung. Angefangen hat er nach dem Abschluss in Informatik mit C++ und Assembler in der Industrieautomatisierung. Plattformübergreifende Apps beschäftigen ihn seit 2012: C# auf der Windows-Plattform, Xamarin, Flutter und Dart, Rust. Letztere setzt er täglich als freiberuflicher Softwareentwickler immer häufiger in Kundenprojekten ein.
Inhaltsverzeichnis
Materialien zum Buch ... 19
TEIL I. Einführung ... 21
1. Über dieses Buch ... 23

1.1 ... Was Sie in diesem Buch lernen werden ... 24

1.2 ... Null-Safety als Default-Einstellung ab Flutter 2.2 ... 26

1.3 ... Danksagung ... 26

2. Installation und die Wahl der IDE ... 27

2.1 ... Flutter herunterladen und installieren ... 27

2.2 ... Die Wahl der IDE ... 31

2.3 ... Die Flutter-Installation voll im Griff ... 36

3. Warum Sie mit Dart voll ins Schwarze treffen ... 39

3.1 ... Der Ursprung von Dart ... 40

3.2 ... Ein erstes Dart-Programm ... 41

3.3 ... Wichtige Begleiter ... 43

3.4 ... Variablen ... 44

3.5 ... Datentypen ... 48

3.6 ... Funktionen ... 66

3.7 ... Klassen, Mixins und Enums ... 77

3.8 ... Generika ... 108

3.9 ... Collections ... 111

3.10 ... Kontrollstrukturen ... 127

3.11 ... Exceptions und Errors ... 134

3.12 ... Asynchrone Programmierung ... 138

3.13 ... Die Library ... 147

3.14 ... Ein Projekt strukturieren ... 149

3.15 ... Code dokumentieren ... 150

3.16 ... Null-Safety ... 152

3.17 ... Zusammenfassung ... 156

4. Pubs: Abhängigkeiten komfortabel verwalten ... 159

4.1 ... Von der Library zum Package ... 159

4.2 ... Ein Meer aus pubs ... 160

4.3 ... Wo Licht ist, da fällt auch Schatten ... 160

4.4 ... Packages verwenden ... 162

4.5 ... Versionen ... 166

4.6 ... Der System-Cache ... 169

4.7 ... Der Build Runner ... 169

4.8 ... Zusammenfassung ... 170

TEIL II. Bedienoberflächen ... 171
5. Widgets ... 173

5.1 ... Ein erstes Widget ... 174

5.2 ... Stateful Widgets ... 182

5.3 ... Material Design und Cupertino Design ... 194

5.4 ... Vom Widget zum Rendering Object ... 197

5.5 ... Keys ... 201

5.6 ... Zusammenfassung ... 205

6. Layouting ... 207

6.1 ... Positionierung ... 207

6.2 ... Scroll-Widgets ... 231

6.3 ... Constraints, Höhen und Breiten ... 259

6.4 ... MediaQueryData ... 267

6.5 ... Overlay ... 273

6.6 ... Die Gerüste ... 283

6.7 ... Zusammenfassung ... 294

7. Navigation ... 295

7.1 ... Ein erster Sprung ... 295

7.2 ... Wenn Flutter nach dem Weg fragt: Named Routes ... 299

7.3 ... Eine Route austauschen ... 301

7.4 ... Routen entfernen ... 303

7.5 ... Großflächig aufräumen mit push und pop ... 304

7.6 ... NavigatorObserver ... 304

7.7 ... Daten austauschen ... 305

7.8 ... Den Android-Back-Button zähmen ... 308

7.9 ... Routen als URIs ... 309

7.10 ... Verschachtelte Navigator-Objekte ... 309

7.11 ... Navigator 2.0 ... 311

7.12 ... Zusammenfassung ... 329

8. Früchte am Baum: InheritedWidgets ... 331

8.1 ... Ein InheritedWidget ... 331

8.2 ... Das eigene InheritedWidget: TimeInfo ... 332

8.3 ... Zusammenfassung ... 335

9. BloCs: View Logic aus dem Weg räumen ... 337

9.1 ... Der BloC ... 337

9.2 ... BloC und ValueListenable ... 338

9.3 ... ChangeNotifier ... 342

9.4 ... Streams ... 345

9.5 ... Futures ... 352

9.6 ... Frische Pizza mit flutter_bloc ... 355

9.7 ... Zusammenfassung ... 358

10. Mit dem Nutzer interagieren ... 359

10.1 ... Button, TextField und Co ... 359

10.2 ... Wischen, Schieben und Ziehen ... 380

10.3 ... Dialogs und die Snackbar ... 387

11. Themes und Styles ... 395

11.1 ... BoxDecoration ... 395

11.2 ... Clipping ... 399

11.3 ... Text ... 403

11.4 ... ThemeData und CupertinoThemeData ... 406

11.5 ... Effekte durch Widgets ... 406

12. Animationen ... 411

12.1 ... Implizite Animationen ... 411

12.2 ... Tween-Animationen ... 416

12.3 ... Explizite Animationen ... 419

12.4 ... AnimatedWidget und der AnimatedBuilder ... 424

13. Arbeiten mit Canvas und Paint ... 429

13.1 ... CustomPaint und CustomPainter ... 429

13.2 ... Zusammenfassung ... 437

TEIL III. Assets und Medien ... 439
14. Assets und Medien ... 441

14.1 ... Bilder ... 441

14.2 ... Icons ... 446

14.3 ... Videos ... 450

14.4 ... Schriften ... 452

14.5 ... Textressourcen ... 453

14.6 ... Zusammenfassung ... 455

15. Den Nutzerkreis vergrößern: Localization und Accessibility ... 457

15.1 ... Localization ... 457

15.2 ... Accessibility ... 475

15.3 ... Zusammenfassung ... 486

16. Die Cloud: Unendliche Weiten ... 487

16.1 ... Daten mit GET beziehen ... 488

16.2 ... Ein eigener (HTTP-)Client ... 489

16.3 ... POST, PUT und PATCH ... 493

16.4 ... Delete ... 500

16.5 ... Mehr zu Requests ... 502

16.6 ... Das Package dio ... 505

16.7 ... JSON-Serialisierung und -Deserialisierung ... 512

16.8 ... Die Webview ... 517

16.9 ... Zusammenfassung ... 532

17. Persistieren: Caches und Datenbanken ... 533

17.1 ... shared_preferences ... 534

17.2 ... flutter_cache_manager ... 538

17.3 ... Datenbanken ... 542

17.4 ... NoSQL mit Hive CE ... 554

17.5 ... Eine wirklich nützliche Beispiel-App ... 556

17.6 ... Zusammenfassung ... 567

TEIL IV. Sensoren und Hardware ... 569
18. Mit der Außenwelt kommunizieren ... 571

18.1 ... Geräteinformationen ... 571

18.2 ... Bewegungssensoren und Batterie ... 573

18.3 ... Verbindungsdaten ... 574

18.4 ... Berechtigungen ... 575

18.5 ... Kamera und Fotobibliothek ... 576

18.6 ... Standortbestimmung ... 577

18.7 ... Zusammenfassung ... 579

19. Den Kanal wechseln: Channels zur Plattform ... 581

19.1 ... Method Channels ... 582

19.2 ... Foreign Function Interface (FFI) ... 588

19.3 ... Hybride Apps ... 592

TEIL V. Endgame ... 601
20. Analytics, Tests und Releases ... 603

20.1 ... Logging ... 603

20.2 ... Analytics ... 605

20.3 ... Debugging ... 605

20.4 ... Profiling ... 607

20.5 ... Testing ... 609

20.6 ... Releases ... 620

20.7 ... Zusammenfassung ... 624

Index ... 625
Details
Erscheinungsjahr: 2025
Fachbereich: Programmiersprachen
Genre: Informatik, Mathematik, Medizin, Naturwissenschaften, Technik
Rubrik: Naturwissenschaften & Technik
Medium: Buch
Reihe: Rheinwerk Computing
Inhalt: 633 S.
ISBN-13: 9783367109722
ISBN-10: 336710972X
Sprache: Deutsch
Einband: Gebunden
Autor: Marburger, Marc
Post, Uwe
Auflage: 2. Auflage
Hersteller: Rheinwerk Verlag GmbH
Verantwortliche Person für die EU: Rheinwerk Verlag GmbH, Rheinwerkallee 4, D-53227 Bonn, service@rheinwerk-verlag.de
Maße: 246 x 177 x 40 mm
Von/Mit: Marc Marburger (u. a.)
Erscheinungsdatum: 08.07.2025
Gewicht: 1,308 kg
Artikel-ID: 133562397
Über den Autor
Marc Marburger hat langjährige Erfahrung in der App- und Softwareentwicklung. Angefangen hat er nach dem Abschluss in Informatik mit C++ und Assembler in der Industrieautomatisierung. Plattformübergreifende Apps beschäftigen ihn seit 2012: C# auf der Windows-Plattform, Xamarin, Flutter und Dart, Rust. Letztere setzt er täglich als freiberuflicher Softwareentwickler immer häufiger in Kundenprojekten ein.
Inhaltsverzeichnis
Materialien zum Buch ... 19
TEIL I. Einführung ... 21
1. Über dieses Buch ... 23

1.1 ... Was Sie in diesem Buch lernen werden ... 24

1.2 ... Null-Safety als Default-Einstellung ab Flutter 2.2 ... 26

1.3 ... Danksagung ... 26

2. Installation und die Wahl der IDE ... 27

2.1 ... Flutter herunterladen und installieren ... 27

2.2 ... Die Wahl der IDE ... 31

2.3 ... Die Flutter-Installation voll im Griff ... 36

3. Warum Sie mit Dart voll ins Schwarze treffen ... 39

3.1 ... Der Ursprung von Dart ... 40

3.2 ... Ein erstes Dart-Programm ... 41

3.3 ... Wichtige Begleiter ... 43

3.4 ... Variablen ... 44

3.5 ... Datentypen ... 48

3.6 ... Funktionen ... 66

3.7 ... Klassen, Mixins und Enums ... 77

3.8 ... Generika ... 108

3.9 ... Collections ... 111

3.10 ... Kontrollstrukturen ... 127

3.11 ... Exceptions und Errors ... 134

3.12 ... Asynchrone Programmierung ... 138

3.13 ... Die Library ... 147

3.14 ... Ein Projekt strukturieren ... 149

3.15 ... Code dokumentieren ... 150

3.16 ... Null-Safety ... 152

3.17 ... Zusammenfassung ... 156

4. Pubs: Abhängigkeiten komfortabel verwalten ... 159

4.1 ... Von der Library zum Package ... 159

4.2 ... Ein Meer aus pubs ... 160

4.3 ... Wo Licht ist, da fällt auch Schatten ... 160

4.4 ... Packages verwenden ... 162

4.5 ... Versionen ... 166

4.6 ... Der System-Cache ... 169

4.7 ... Der Build Runner ... 169

4.8 ... Zusammenfassung ... 170

TEIL II. Bedienoberflächen ... 171
5. Widgets ... 173

5.1 ... Ein erstes Widget ... 174

5.2 ... Stateful Widgets ... 182

5.3 ... Material Design und Cupertino Design ... 194

5.4 ... Vom Widget zum Rendering Object ... 197

5.5 ... Keys ... 201

5.6 ... Zusammenfassung ... 205

6. Layouting ... 207

6.1 ... Positionierung ... 207

6.2 ... Scroll-Widgets ... 231

6.3 ... Constraints, Höhen und Breiten ... 259

6.4 ... MediaQueryData ... 267

6.5 ... Overlay ... 273

6.6 ... Die Gerüste ... 283

6.7 ... Zusammenfassung ... 294

7. Navigation ... 295

7.1 ... Ein erster Sprung ... 295

7.2 ... Wenn Flutter nach dem Weg fragt: Named Routes ... 299

7.3 ... Eine Route austauschen ... 301

7.4 ... Routen entfernen ... 303

7.5 ... Großflächig aufräumen mit push und pop ... 304

7.6 ... NavigatorObserver ... 304

7.7 ... Daten austauschen ... 305

7.8 ... Den Android-Back-Button zähmen ... 308

7.9 ... Routen als URIs ... 309

7.10 ... Verschachtelte Navigator-Objekte ... 309

7.11 ... Navigator 2.0 ... 311

7.12 ... Zusammenfassung ... 329

8. Früchte am Baum: InheritedWidgets ... 331

8.1 ... Ein InheritedWidget ... 331

8.2 ... Das eigene InheritedWidget: TimeInfo ... 332

8.3 ... Zusammenfassung ... 335

9. BloCs: View Logic aus dem Weg räumen ... 337

9.1 ... Der BloC ... 337

9.2 ... BloC und ValueListenable ... 338

9.3 ... ChangeNotifier ... 342

9.4 ... Streams ... 345

9.5 ... Futures ... 352

9.6 ... Frische Pizza mit flutter_bloc ... 355

9.7 ... Zusammenfassung ... 358

10. Mit dem Nutzer interagieren ... 359

10.1 ... Button, TextField und Co ... 359

10.2 ... Wischen, Schieben und Ziehen ... 380

10.3 ... Dialogs und die Snackbar ... 387

11. Themes und Styles ... 395

11.1 ... BoxDecoration ... 395

11.2 ... Clipping ... 399

11.3 ... Text ... 403

11.4 ... ThemeData und CupertinoThemeData ... 406

11.5 ... Effekte durch Widgets ... 406

12. Animationen ... 411

12.1 ... Implizite Animationen ... 411

12.2 ... Tween-Animationen ... 416

12.3 ... Explizite Animationen ... 419

12.4 ... AnimatedWidget und der AnimatedBuilder ... 424

13. Arbeiten mit Canvas und Paint ... 429

13.1 ... CustomPaint und CustomPainter ... 429

13.2 ... Zusammenfassung ... 437

TEIL III. Assets und Medien ... 439
14. Assets und Medien ... 441

14.1 ... Bilder ... 441

14.2 ... Icons ... 446

14.3 ... Videos ... 450

14.4 ... Schriften ... 452

14.5 ... Textressourcen ... 453

14.6 ... Zusammenfassung ... 455

15. Den Nutzerkreis vergrößern: Localization und Accessibility ... 457

15.1 ... Localization ... 457

15.2 ... Accessibility ... 475

15.3 ... Zusammenfassung ... 486

16. Die Cloud: Unendliche Weiten ... 487

16.1 ... Daten mit GET beziehen ... 488

16.2 ... Ein eigener (HTTP-)Client ... 489

16.3 ... POST, PUT und PATCH ... 493

16.4 ... Delete ... 500

16.5 ... Mehr zu Requests ... 502

16.6 ... Das Package dio ... 505

16.7 ... JSON-Serialisierung und -Deserialisierung ... 512

16.8 ... Die Webview ... 517

16.9 ... Zusammenfassung ... 532

17. Persistieren: Caches und Datenbanken ... 533

17.1 ... shared_preferences ... 534

17.2 ... flutter_cache_manager ... 538

17.3 ... Datenbanken ... 542

17.4 ... NoSQL mit Hive CE ... 554

17.5 ... Eine wirklich nützliche Beispiel-App ... 556

17.6 ... Zusammenfassung ... 567

TEIL IV. Sensoren und Hardware ... 569
18. Mit der Außenwelt kommunizieren ... 571

18.1 ... Geräteinformationen ... 571

18.2 ... Bewegungssensoren und Batterie ... 573

18.3 ... Verbindungsdaten ... 574

18.4 ... Berechtigungen ... 575

18.5 ... Kamera und Fotobibliothek ... 576

18.6 ... Standortbestimmung ... 577

18.7 ... Zusammenfassung ... 579

19. Den Kanal wechseln: Channels zur Plattform ... 581

19.1 ... Method Channels ... 582

19.2 ... Foreign Function Interface (FFI) ... 588

19.3 ... Hybride Apps ... 592

TEIL V. Endgame ... 601
20. Analytics, Tests und Releases ... 603

20.1 ... Logging ... 603

20.2 ... Analytics ... 605

20.3 ... Debugging ... 605

20.4 ... Profiling ... 607

20.5 ... Testing ... 609

20.6 ... Releases ... 620

20.7 ... Zusammenfassung ... 624

Index ... 625
Details
Erscheinungsjahr: 2025
Fachbereich: Programmiersprachen
Genre: Informatik, Mathematik, Medizin, Naturwissenschaften, Technik
Rubrik: Naturwissenschaften & Technik
Medium: Buch
Reihe: Rheinwerk Computing
Inhalt: 633 S.
ISBN-13: 9783367109722
ISBN-10: 336710972X
Sprache: Deutsch
Einband: Gebunden
Autor: Marburger, Marc
Post, Uwe
Auflage: 2. Auflage
Hersteller: Rheinwerk Verlag GmbH
Verantwortliche Person für die EU: Rheinwerk Verlag GmbH, Rheinwerkallee 4, D-53227 Bonn, service@rheinwerk-verlag.de
Maße: 246 x 177 x 40 mm
Von/Mit: Marc Marburger (u. a.)
Erscheinungsdatum: 08.07.2025
Gewicht: 1,308 kg
Artikel-ID: 133562397
Sicherheitshinweis