Leitfaden
Ein Leitfaden zum systematischen Erlernen von RxJS in TypeScript-Umgebungen. Durch das schrittweise Durcharbeiten der folgenden Abschnitte können Sie RxJS von den Grundlagen bis zu fortgeschrittenen Anwendungen systematisch verstehen.
Inhaltsverzeichnis
1. Einführung in RxJS
- Einführung
- Einrichtung der Lernumgebung
- Was ist RxJS?
- Was ist ein Stream?
- Unterschiede zwischen Promise und RxJS
2. Observable-Grundlagen
- Was ist ein Observable?
- Erstellen von Observables
- Ereignisse in Streams umwandeln
- Ereignisse, die nicht mit fromEvent verwendet werden können
- Ereignisliste
- Lebenszyklus von Observables
- Cold Observables und Hot Observables
3. Creation Functions
- Was sind Creation Functions?
- Grundlegende Erstellung - of, from, fromEvent, interval, timer
- Schleifengenerierung - range, generate
- HTTP-Kommunikation - ajax, fromFetch
- Kombination - concat, merge, combineLatest, zip, forkJoin
- Auswahl/Partitionierung - race, partition
- Bedingte Verzweigung - iif, defer
- Steuerung - scheduled, using
4. Operatoren verstehen
- Übersicht über Operatoren
- Pipeline-Konzept
- Transformationsoperatoren - map, scan, mergeMap, switchMap, buffer-Serie, window-Serie usw.
- Filteroperatoren - filter, take, debounceTime, throttleTime, distinct usw.
- Kombinationsoperatoren - concatWith, mergeWith, withLatestFrom, *All-Operatoren usw.
- Utility-Operatoren - tap, delay, retry, finalize, takeUntil usw.
- Bedingte Operatoren - defaultIfEmpty, every, isEmpty usw.
- Multicasting - share, shareReplay usw.
5. Subject und Multicasting
6. Fehlerbehandlung
- Fehlerbehandlungsstrategien
- Zwei Orte der Fehlerbehandlung
- Integration von try-catch und RxJS
- retry und catchError
- finalize und complete
7. Nutzung von Schedulern
- Steuerung asynchroner Verarbeitung
- Arten und Verwendung von Schedulern
- Zusatz: Grundlagen zu Tasks und Schedulern
8. Debugging-Techniken für RxJS
- Übersicht über Debugging-Techniken
- Häufige Debugging-Szenarien
- Benutzerdefinierte Debugging-Tools
- Performance-Debugging
9. Testmethoden
10. RxJS Anti-Pattern-Sammlung
- Was sind Anti-Patterns?
- Häufige Fehler und Gegenmaßnahmen
- If-Statement-Verschachtelungshölle innerhalb von subscribe
- Vermischung von Promise und Observable
- One-Liner-Hölle und schrittweise Trennung
- Checkliste zur Vermeidung von Anti-Patterns
11. Überwindung von RxJS-Schwierigkeiten
- Warum ist RxJS schwierig?
- Die Barriere des konzeptuellen Verständnisses
- Die Barriere des Lebenszyklus-Managements
- Unsicherheit bei der Operatorauswahl
- Verständnis von Timing und Reihenfolge
- Schwierigkeiten beim Zustandsmanagement
- Kombination mehrerer Streams
- Die Debugging-Barriere
13. Sammlung praktischer Muster
- Übersicht über praktische Muster
- UI-Ereignisverarbeitung - Klicks, Scroll, Drag & Drop usw.
- API-Aufrufe - HTTP-Kommunikation, parallele/serielle Verarbeitung, Fehlerbehandlung
- Formularverarbeitung - Echtzeit-Validierung, Auto-Save, Verknüpfung mehrerer Felder
- Erweiterte Formularmuster - JSON Patch, Auto-Save großer Formulare, Undo/Redo, gemeinsame Bearbeitung
- Echtzeit-Datenverarbeitung - WebSocket, SSE, Polling, Verbindungsverwaltung
- Cache-Strategien - Daten-Caching, TTL, Invalidierung, Offline-Unterstützung
- Praktische Fehlerbehandlung - API-Aufruffehler, Retry-Strategien, globale Fehlerbehandlung
- Bedingte Verzweigung innerhalb von subscribe - Verzweigungen innerhalb von subscribe vermeiden, Verzweigungen innerhalb der Pipeline
Anhang
- Übersicht Anhang
- Eingebettete Entwicklung und reaktive Programmierung
- Reaktive Methoden außerhalb von ReactiveX
- Gesamtkarte der reaktiven Architektur
NOTE
Dieser Leitfaden ist so strukturiert, dass Sie Ihr Verständnis von RxJS schrittweise und systematisch vertiefen können. Bitte konsultieren Sie die einzelnen Abschnitte nach Bedarf frei.