Skip to content

Standard Architektur

Wilfried Ifland edited this page Jul 30, 2024 · 3 revisions

Die Standardarchitektur eines neu erstellten Flutter-Projekts hat keine spezifische, formell benannte Architektur wie MVC (Model-View-Controller) oder MVVM (Model-View-ViewModel). Stattdessen handelt es sich um eine einfache, komponentenbasierte Struktur, die auf der Idee von Widgets basiert.

Diese Struktur ist bewusst minimal und flexibel gehalten, um Entwicklern eine Grundlage zu bieten, die sie leicht an ihre spezifischen Bedürfnisse und bevorzugten Architekturpatterns anpassen können.

Merkmale der Standardarchitektur

Widget-basierte Struktur:

Die gesamte Benutzeroberfläche (UI) in Flutter besteht aus Widgets, die sich rekursiv zusammensetzen. Jedes UI-Element, von kleinsten Knöpfen bis hin zu komplexen Layouts, ist ein Widget.

Single Entry Point: Die main.dart-Datei enthält den Einstiegspunkt der Anwendung und startet das Hauptwidget (MyApp). Einfache Zustandsverwaltung:

Die Standardvorlage verwendet einfache Zustandsverwaltungstechniken wie StatefulWidget und die setState-Methode, um Änderungen im UI-Zustand zu verwalten. Beispielhafte Verzeichnisstruktur Hier ist ein Beispiel der grundlegenden Struktur eines neu erstellten Flutter-Projekts:

my_project/
├── android/
├── ios/
├── lib/
│   └── main.dart
├── test/
│   └── widget_test.dart
├── pubspec.yaml
└── README.md

Vorteile der Standardarchitektur Einfachheit und Verständlichkeit: Ideal für Anfänger, die gerade erst mit Flutter beginnen. Die Struktur ist leicht zu verstehen und schnell startklar. Flexibilität: Entwicklern wird die Freiheit gegeben, die Struktur nach ihren Bedürfnissen zu erweitern und anzupassen, z.B. durch die Implementierung von komplexeren Architekturen wie BLoC, MVVM oder Redux. Komponentenbasierte Entwicklung: Fördert die Wiederverwendbarkeit und Modularität des Codes durch den umfassenden Einsatz von Widgets.

Erweiterungsmöglichkeiten Die Standardarchitektur bietet eine gute Basis, die leicht zu komplexeren Architekturmuster erweitert werden kann:

MVVM (Model-View-ViewModel):

Trennung von Geschäftslogik und UI durch ViewModels. BLoC (Business Logic Component):

Verwendung von Streams und Events zur Verwaltung der Geschäftslogik und Zustände. Redux:

Zentralisierte Zustandsverwaltung mit klar definierten Actions und Reducers.

Zusammenfassung Die Standardarchitektur eines Flutter-Projekts ist eine komponentenbasierte Struktur, die auf Widgets aufbaut und einfach und flexibel gehalten ist. Diese Struktur kann leicht erweitert werden, um komplexere Architekturen wie MVVM, BLoC oder Redux zu unterstützen, abhängig von den Anforderungen und Präferenzen des Entwicklers.

Clone this wiki locally