REACT / REDUX TOOLKIT
(& TYPESCRIPT)
Una giornata di formazione sull'ultima versione di Redux, utilizzando Typescript, Redux Toolkit e RTK Query

INTRODUZIONE
React fornisce gli strumenti fondamentali per l'organizzazione della user interface.
Tuttavia, le attività che il front-end deve svolgere sono sempre più complesse e le interfacce utente (UI),
di conseguenza, stanno diventando sempre più sofisticate: gestione di un data-flow molto articolato,
componenti che devono rimanere in sync tra di loro, integrazione unit test, refactoring e debug sono
solo alcune delle attività ricorrenti che uno sviluppatore front-end deve affrontare quotidianamente.
REDUX
Redux nasce con l’obiettivo di separare nettamente gli aspetti architetturali dalla user interface,
semplificando la gestione dello stato applicativo e rendendo il codice molto più manutenibile, testabile e scalabile
grazie alla possibilità di isolare e tracciare ogni fase del ciclo di vita dell'applicazione.
REDUX TOOLKIT
In questo corso utilizzeremo Redux Toolkit, una libreria ufficiale realizzata dal team Redux allo scopo di:
semplificarne l'utilizzo di Redux in React
ridurre draticamente la quantità di codice e dipendenze
rendere Redux "opionated", definendo regole e buone pratiche
PERCHÈ TYPESCRIPT & HOOKS?
In questo corso utilizzeremo Typescript e faremo ampio uso degli hook forniti dalle ultime versioni sia di React che Redux.
Perché Typescript e gli hook?
Per saperne di più ti invito a leggere il programma del corso "React & Typescript (with hooks)"
Perché Typescript e gli hook?
Per saperne di più ti invito a leggere il programma del corso "React & Typescript (with hooks)"
OBIETTIVO DEL CORSO
Integrare e utilizzare lo state manager Redux in applicazioni React utilizzando Redux Toolkit e Typescript
REQUISITI
Familiarità con l’utilizzo di React e Typescript. Conoscere, quindi, gli argomenti affrontati durante il corso React & Typescript (with hooks).
Durata: 8-12 ore
Livello: Intermedio
Versione React: 18.x
Tipologia: in aula o da remoto
PROGRAMMA
FUNDAMENTALS
TEORIA: Principi fondamentali di Redux
Immutable State
Pure vs Inpure functions
Containers vs Presentational components
Concetto di "Store"
Cosa sono i "reducer"
"Actions"
Side "Effects"
State "Selectors" e memoization
Introduzione ai Redux DevTool
Data Architecture e Stateless UI
La libreria React-Redux
La libreria Redux Toolkit
Immutability vs ImmerJS
Debugging e Potenzialità dei Redux Dev tools
Organizzazione progetti enterprise
REDUX
LIVE CODING: tutti i concetti sono descritti con sessioni di live coding e la creazione di diversi esempi e micro applicazioni
Creazione progetti React con Redux & Redux Toolkit
Configurare lo Store e i Redux DevTools
Utilizzo del componente Provider
Gestione stato tramite Reducer e combineReducer
Redux Hooks: useSelector and useDispatch
Dispatch di azioni
Selectors semplici e compositi ('useSelector')
Creare reducer con l'hook 'createReducer'
Gestire lo stato con l'hook 'createSlice'
Differenti tecniche per la gestione degli errori
Side Effect, XHR e operazioni asincrone con Redux Thunk
ADVANCED TOPICS
createAsyncThunk
extraReducers
Custom Middlewares
Introduzione a Redux Observable & RxJS
Entities: createEntityAdapter
Introduzione a RTK Query
ISTRUTTORE:
FABIO BIONDI
FABIO BIONDI

TRAINER, SPEAKER, DEVELOPER
Mi chiamo Fabio Biondi, sono Microsoft MVP e Google Developer Expert in Angular e Web Technologies, e ho più di 15 anni di esperienza nella creazione di applicazioni web enterprise.
Sviluppatore, Istruttore e Speaker in numerosi eventi. Ho fondato e gestisco diverse community italiane che si occupano di Javascript, Angular, React e Opportunità per gli sviluppatori (più di 30000 membri).
Attualmente mi occupo di formazione e mentoring su Javascript / Typescript, Angular, React, Redux, NGRX, RxJS, Next e, recentemente, Lit e Web Components.
Mi occupo, inoltre, di creazione contenuti tecnici su YouTube (in italiano e in inglese) e sono partner su Twitch in cui mi trovate spesso in streaming (con ospiti, sessioni di formazione, live coding e studio di nuove tecnologie).
CERTIFICATIONI & AWARDS
Dal 2019: Microsoft MVP Dal 2018: Google Developer Expert in Web Technologies e Angular 2004-2011: Adobe Certified Expert & Instructor (Flex, AIR, Flash).

Sviluppatore, Istruttore e Speaker in numerosi eventi. Ho fondato e gestisco diverse community italiane che si occupano di Javascript, Angular, React e Opportunità per gli sviluppatori (più di 30000 membri).
Attualmente mi occupo di formazione e mentoring su Javascript / Typescript, Angular, React, Redux, NGRX, RxJS, Next e, recentemente, Lit e Web Components.
Mi occupo, inoltre, di creazione contenuti tecnici su YouTube (in italiano e in inglese) e sono partner su Twitch in cui mi trovate spesso in streaming (con ospiti, sessioni di formazione, live coding e studio di nuove tecnologie).
CERTIFICATIONI & AWARDS

COSA INCLUDE IL CORSO
Corso di formazione on-site
8-12 ore
Accesso ad Area educational
Slide & Esercizi
Codice Sorgente
Incluso
Attestato di partecipazione
PDF formato A4
FAQ
A chi è rivolto?
Non sono sicuro che questo corso sia adatto al mio team. Puoi aiutarmi ad orientarmi?
Posso modificare il programma e creare un corso personalizzato ?
Dove può essere erogato il corso?
Quanto costa?
C'è un quantitativo minimo di giornate da acquistare?
Il corso prevede esercitazioni per gli studenti?
Devo portare il mio laptop?