State Management bezeichnet die Organisation und Verwaltung des Zustands einer Anwendung — also aller Daten, die sich während der Nutzung ändern und die Oberfläche beeinflussen. Je größer eine App wird, desto wichtiger ist eine klare Strategie dafür.
Was ist der Zustand?
Der Zustand (State) umfasst alles, was eine Anwendung „weiß“: Eingaben des Nutzers, Antworten eines API-Servers, den Inhalt eines Warenkorbs oder die aktive Seite. Man unterscheidet lokalen Zustand (nur eine Komponente betreffend) und globalen Zustand (für die ganze App relevant).
Herausforderungen ohne Strategie
- Dieselbe Information wird an mehreren Stellen gehalten und gerät auseinander.
- Komponenten müssen den Zustand über viele Ebenen hinweg durchreichen (Prop Drilling).
- Nebenläufige asynchrone Aktualisierungen führen zu inkonsistenten Ansichten.
Bewährte Ansätze
In React fließen Daten von oben nach unten: Eltern reichen Werte an Kinder weiter, Änderungen laufen über Callbacks zurück (Unidirectional Data Flow). Für größere Apps gibt es spezialisierte Bibliotheken wie Redux, MobX oder Zustand — sie zentralisieren den Zustand in einem Store und machen Änderungen nachvollziehbar. Auch serverseitige Zustände (Nutzerdaten, Sitzungen) sind Teil des Themas: Session und Cookie speichern solche Informationen über Anfragen hinweg.
Praxis-Tipps
- So viel Zustand wie nötig lokal halten, so wenig wie möglich global.
- Zustand ableiten statt duplizieren — abgeleitete Werte nicht zusätzlich speichern.
- Zustandsänderungen an einer Stelle bündeln und dokumentieren (z.B. durch Actions im Store).
Verwandte Grundlagen: React, Frontend, Fullstack, API, WebSocket.