OSWE-17 - ANGULAR DATA ARCHITECTURES: REDUX E RXJS 5

INFORMAZIONI SUL CORSO

durata

Durata:

3 GIORNI
categoria

Categoria:

Web Development
qualifica

Qualifica istruttore:

Docente Senior (min. 5 anni)
dedicato a

Dedicato a:

Sviluppatore
produttore

Produttore:

PCSNET

SCEGLI LA SEDE PER QUESTO CORSO

CORSO A CALENDARIO

Per vedere le informazioni relative al calendario del corso scegli prima una sede
sede
Sede: PCSNET Roma
prezzo
Prezzo: 1.240 € + IVA
Inizio
Fine
Prezzo
 
16 lug 18
18 lug 18
1.240 €
03 dic 18
05 dic 18
1.240 €
sede
Sede: PCSNET Milano
prezzo
Prezzo: 1.240 € + IVA
Questo corso attualmente non ha date a Calendario e può essere erogato in forma dedicata.
Usa il box qui accanto per richiederne uno apposta per te!
sede
Sede: PCSNET NordEst
prezzo
Prezzo: 1.240 € + IVA
Questo corso attualmente non ha date a Calendario e può essere erogato in forma dedicata.
Usa il box qui accanto per richiederne uno apposta per te!
sede
Sede: PCSNET Torino
prezzo
Prezzo: 1.240 € + IVA
Questo corso attualmente non ha date a Calendario e può essere erogato in forma dedicata.
Usa il box qui accanto per richiederne uno apposta per te!
sede
Sede: PCSNET Emilia Romagna
prezzo
Prezzo: 1.240 € + IVA
Questo corso attualmente non ha date a Calendario e può essere erogato in forma dedicata.
Usa il box qui accanto per richiederne uno apposta per te!
sede
Sede: PCSNET Toscana
prezzo
Prezzo: 1.240 € + IVA
Questo corso attualmente non ha date a Calendario e può essere erogato in forma dedicata.
Usa il box qui accanto per richiederne uno apposta per te!
sede
Sede: PCSNET Marche
prezzo
Prezzo: 1.240 € + IVA
Questo corso attualmente non ha date a Calendario e può essere erogato in forma dedicata.
Usa il box qui accanto per richiederne uno apposta per te!
sede
Sede: PCSNET Umbria
prezzo
Prezzo: 1.240 € + IVA
Questo corso attualmente non ha date a Calendario e può essere erogato in forma dedicata.
Usa il box qui accanto per richiederne uno apposta per te!
sede
Sede: PCSNET Napoli
prezzo
Prezzo: 1.240 € + IVA
Questo corso attualmente non ha date a Calendario e può essere erogato in forma dedicata.
Usa il box qui accanto per richiederne uno apposta per te!
sede
Sede: PCSNET Sicilia
prezzo
Prezzo: 1.240 € + IVA
Questo corso attualmente non ha date a Calendario e può essere erogato in forma dedicata.
Usa il box qui accanto per richiederne uno apposta per te!

CORSO DEDICATO

Per avere informazioni sul corso dedicato compila il form e ti contatteremo

CORSO DEDICATO

Grazie per la tua richiesta, ti contatteremo al più presto.

OBIETTIVI

Imparare a sviluppare architetture dati e gestire flussi di dati complessi in Web Applications con Redux e RxJS 5 in Angular 2+.

Angular Data Architectures è un corso diviso in 3 parti sulle più recenti ed avanzate tecnologie in merito alla creazione di architetture dati solide e scalabili in contesti Angular 2+ enterprise e non.

I partecipanti verranno preparati su RxJS5 ed Observables per sfruttare al meglio RxJS in scenari sia comuni che avanzati nello sviluppo di Web Applications quali gestione input utente, richieste multiple da e verso server dipendenti tra loro e molto altro.

Tramite Redux verranno inoltre esplorate tecniche per una gestione dello stato applicativo chiara, performante, prevedibile e scalabile. Man mano che un’applicazione cresce, come si garantisce che una variazione di stato in un modulo sia consistente e accurata in altri moduli indipendenti? Cosa succede se tali modifiche risultano in altre modifiche?

Programma tarato sul livello di conoscenza dei partecipanti

Preparazione allo sviluppo funzionale e reattivo in contesti enterprise Angular 2+ e Typescript

Comprensione nozioni in dettaglio su RxJS, Observables e Redux

PREREQUISITI

Per partecipare è necessario avere confidenza con:

la maggior parte degli argomenti trattati durante il corso Angular Master Class

concetto di stato applicativo di un’applicazione

strumenti Git e npm v.3+

CONTENUTI:

Day#1:Reactive Programming in RxJS 5

 

REACTIVE PROGRAMMING IN RXJS:

Concetti core Reactive Programming, differenze e use cases in relazione ad altri paradimmi

Comprensione in dettaglio di Observables e Observers

Creazione di custom Observables ed Observers in comuni casi d’uso

Utilizzo degli operators più comuni e scenari d’uso per ciascuno

Gestione eventi asincroni comuni ed avanzati quali HTTP

Esercizi sulle basi di RxJS con tips & tricks

 

REAL-WORLD RXJS:

Debugging in RxJS

Combinazione di Observables ed operators

Subjects e multicasting: cosa sono, differenze tra i diversi tipi di Subjects e casi d’uso per ciascuno

BehaviourSubject in dettaglio: perché viene tanto usato e come evitare errori più comuni

Studio problemi comuni nelle Web Applications con relative soluzioni in RxJS

 

ANGULAR 2+ & RXJS:

Integrazione RxJS in progetti Angular e Typescript

Aspetti reactive del framework Angular: Http, Reactive Forms, Router, Componenti

State management e application flow con RxJS

Miglioramento performance di un’applicazione Angular con RxJS

Build e distribution di un’applicazione Angular con RxJS

 

RXJS AVANZATO:

Unit testing con RxJS

Gestione WebSockets in RxJS

Dietro le quinte di RxJS: come è implementato

Utilizzo di uno Scheduler in contesti ad alto carico di lavoro (livello alto avanzato)

 

Day #2: Angular Data Architecture in Redux

 

CONCETTI CORE:

Problemi di comunicazione tra componenti Angular

Gestione del data-flow deterministico, scalabile ed esplicito

Caratteristiche del pattern Flux e come Redux evolve da esso

Vantaggi dell’ unidirezionalità

Confronto con MVC

Integrazione con Angular 2+

Pattern Smart e Dumb Components

Come mantenere lo stato applicativo e Redux indipendente dai componenti

Integrazione Redux + Typescript: tipizzazione dello stato applicativo

 

INTEGRAZIONE REDUX e RXJS:

ChangeDetectionStrategy: come migliorare le performance dei componenti tramite Redux

Utilizzo di librerie Redux in Angular: angular-redux (precedentemente denominato ng2-redux) e ngrx. Differenze e come scegliere consapevolmente.

 

REAL-WORLD REDUX CON UNIT TESTING:

Principi fondamentali

Action e action creator con unit testing

Reducers con unit testing

Caratteristiche dello Store immutabile

Comporre lo stato iniziale e l’avvio dell’app

Vantaggi dello Single state tree

L’importanza dell’Immutabilità

 

REDUX-AVANZATO:

Composizione di reducers

Redux Middlewares

Side effects con redux-observable e ngrx/effects

State selectors, memoization e computed data

Accenni server-side rendering con Redux e Angular 2+

 

Day #3: Real World Application

Durante la terza giornata si estenderà un’applicazione di banking, risultato della 4° giornata di Angular Master Class, al fine di mostrare un confronto più chiaro delle differenze e dei vantaggi introdotti da RxJS e Redux in un’applicazione. La previa partecipazione al corso Angular Master Class è consigliata ma non obbligatoria, in quanto verranno presentati a tutti i partecipanti gli aspetti principali dell’applicazione. Si affronteranno inoltre le difficoltà ed errori più comuni nella gestione di eventi asincroni e dello stato applicativo, portando luce e soluzioni riusabili in diversi contesti relativi ad applicazioni Angular.

 

ANALISI E RISOLUZIONE

Analisi iniziale dell’applicazione prima di Redux + RxJS e studio dei problemi di stato applicativo e data-flow

Risoluzione dei problemi tramite puro RxJS in Angular 2+

Analisi pro e contro puro RxJS

Integrazione Redux con Observable Store nell’applicazione

Analisi struttura dello stato applicativo: errori e design patterns più comuni

Analisi struttura di un progetto Angular 2+ con Redux

 

OPERAZIONI:

Operazioni CRUD in Redux

Creazione action creators e reducers con unit testing

Creazione componenti smart & dumb connessi a Redux con unit testing della parte Redux

Utilities e tips per la modifica dello stato applicativo in maniera concisa, performante e dichiarativa

Gestione richieste HTTP al server

Gestione validazione server ed optimistic updates con eventuale rollback

Gestione autenticazione JWT in Redux

Persistenza dello stato applicativo

INFO

  • Manuale: Dispense PCSNET
  • Prezzo manuale: 20 € incluso nel prezzo del corso
  • Natura del corso: Operativo (previsti lab su PC)

PARTNERSHIP