Guida
Questa guida aiuta a imparare sistematicamente RxJS in un ambiente TypeScript. Procedendo in ordine attraverso le sezioni che seguono, è possibile acquisire una comprensione strutturata di RxJS, dai fondamenti ai concetti avanzati.
Indice
1. Introduzione a RxJS
- Come iniziare
- Impostazione dell'ambiente di apprendimento
- Che cos'è RxJS?
- Cos'è uno stream?
- Promise vs. RxJS
2. Fondamenti degli osservabili
- Che cos'è un osservabile?
- Come creare un osservabile
- Eventi in streaming
- Elenco di eventi
- Observer vs Subscriber
- Ciclo di vita degli osservabili
- Osservabili freddi e osservabili caldi
3. Funzioni di creazione
- Cosa sono le funzioni di creazione?
- Funzioni di creazione di base - of, from, fromEvent, interval, timer
- Funzioni di generazione di loop - range, generate
- Funzioni di comunicazione HTTP - ajax, fromFetch
- Funzioni di combinazione - concat, merge, combineLatest, zip, forkJoin
- Funzioni di selezione e partizione - race, partition
- Funzioni condizionali - iif, defer
- Funzioni di controllo - scheduled, using
4. Comprendere gli operatori
- Panoramica degli operatori
- Concetti di pipeline
- Operatori di trasformazione - map, scan, mergeMap, switchMap, etc.
- Operatori di filtraggio - filter, take, debounceTime, throttleTime, etc.
- Operatori di combinazione - withLatestFrom, mergeWith, etc.
- Operatori di utilità - tap, delay, retry, finalize, takeUntil, etc.
- Multicasting - share, shareReplay, etc.
5. Soggetti e multicasting
6. Gestione degli errori
- Strategie di gestione degli errori
- Due posizioni per la gestione degli errori
- Integrazione di try-catch con RxJS
- retry e catchError
- finalize e complete
7. Utilizzare gli schedulatori
- Controllare l'elaborazione asincrona
- Tipi di scheduler e loro utilizzo
- Nozioni di base su task e scheduler
8. Tecniche di debug di RxJS
- Panoramica delle tecniche di debug
- Scenari di debug comuni
- Strumenti di debug personalizzati
- Debug delle prestazioni
9. Tecniche di test
10. Raccolta di anti-pattern di RxJS
- Cosa sono gli anti-pattern?
- Errori comuni e soluzioni
- Proliferazione dei flag
- Dichiarazioni if annidate nelle sottoscrizioni
- Mescolare promesse e osservabili
- L'inferno di una riga
- Lista di controllo per evitare gli anti-pattern
11. Superare le difficoltà di RxJS
- Perché RxJS è difficile
- Barriera della comprensione concettuale
- L'ostacolo della gestione del ciclo di vita
- Dilemmi nella selezione degli operatori
- Comprensione di tempi e ordini
- Difficoltà con la gestione degli stati
- Combinazione di più flussi
- Sfide del debug
13. Raccolta di modelli pratici
- Panoramica dei modelli pratici
- Gestione degli eventi dell'interfaccia utente
- Chiamate API
- Gestione dei moduli
- Pattern form avanzati
- Elaborazione dei dati in tempo reale
- Strategie di caching
- Modelli di gestione degli errori
- Diramazione condizionale nelle sottoscrizioni
Appendice
- Panoramica dell'appendice
- Sviluppo incorporato e programmazione reattiva
- Modelli reattivi oltre RxJS
- Mappa dell'architettura reattiva
- Programmazione reattiva riconsiderata
- Ecosistema RxJS e Reactive Streams
NOTE
Questa guida è strutturata in modo da approfondire la comprensione di RxJS in modo graduale e sistematico. Sentitevi liberi di fare riferimento a qualsiasi sezione, se necessario.