MASTERING ANGULAR
Due giornate di approfondimento sul framework per la creazione di progetti modulari, scalabili e performanti, applicando pattern e best practice

INTRODUZIONE
Acquisire il know-how necessario per la creazione di progetti Angular di una certa complessità applicando pattern, best practice e affrontando diversi aspetti fondamentali nella creazione di Single Page Application: gestire lo stato applicativo, autenticazione JWT e sicurezza, ottimizzazione performance e bundle-size, creare nested routes e applicare strategie di lazy loading, creazione codice scalabile ed efficiente, organizzare e strutturare l'applicazione in componenti e moduli.
OBIETTIVO DEL CORSO
Approfondimento sul framework, utilizzo di pattern e best practice:
approccio component-based; applicazioni modulari tramite la creazione di custom
approccio component-based; applicazioni modulari tramite la creazione di custom
ngModules (core, features, shared); approfondimento su router, guardie, lazy loading e nested routes; gestire l'intero processo di autenticazione; approfondimenti su componenti, direttive e depedency injection; ottimizzazione performane; manipolazione DOM e molto altro.REQUISITI
Conoscere le fondamenta del framework: binding, direttive incluse nel framework, form, dependency injection e comunicazione con REST API, ovvero gli argomenti alla base del corso introduttivo Angular Core Concepts
Durata: 16 ore
Livello: Intermedio
Versione Angular: 14.x
Versione Typescript: 4.x+
Tipologia: in aula o da remoto
TRASCRIZIONE DEL VIDEO
PROGRAMMA
Custom Components
Input properties
Output Event emitters
Content Projection
Sibling Components communication
Comunicazione tra componenti "padre" e "figli"
Componenti riutilizzabili: Collapsable, Tabbar, Map, ...
Component-based approach: organizzare la UI in componenti stateless
Stateful vs Stateless components
Approfondimenti sul Router
API, componenti e direttive fornite dal modulo router
Creare applicazioni multiview
Creare custom modules per le regole di routing
Gestire route con parametri
Router e Lazy Loading
Children Routes
Nested Routes e multipli router-outlet
Router Events
Manipolazione DOM in Angular
DOM e local template reference variables
@ViewChild and DOM references
Il servizio ElementRef e nativeElement
Introduzione: direttive custom
Introduzione: creazione custom Pipe
Organizzazione modulare dei progetti
Strutture progetti scalabili e manutenibili
Creazione applicazioni modulari e custom ngModule
Applicazioni modulari e custom ngModule
Differenze tra moduli Core, Shared & Features
Domain vs Widget vs Service Modules
Build & Deploy
Convenzioni, styleguide, best practice
Data Architectures in Angular
State management con servizi e dependency injection
Gestione Stato e Side Effect
Immutabilità? Perchè è utile e quando?
Ottimizzazione performance con le strategie di ChangeDetection onPush
Bad (e Good) Practices nell'utilizzo della Dependency Injection
Sicurezza e Authentication
Autenticazione con JWT
Procedure di Login e Logout
Utilizzo REST API protette da token
Creare HTTP “interceptors”
Gestione errori HTTP
CORS, preflight e OPTIONS
Router Guards: protezione routes
Local Storage & Auto-login
Creare direttive custom per la gestione dei ruoli utente
MODALITÀ LEZIONI
TEORIA

Approfondimento su API, tecniche e funzionalità del framework. Decine di slide, diagrammi e materiale esclusivo incluso nel corso
LIVE CODING

La maggior parte degli argomenti sono esposti tramite sessioni di live coding, affrontando scenari reali e creando codice riutilizzabile
REAL APPS

I concetti descritti durante il corso saranno messi in pratica tramite la realizzazione di una Single Page Application
ESEMPIO LEZIONE
In questa lezione:
Utilizzo della CLI (Command Line Interface)
Generazione di componenti e moduli custom
Approccio component-based
Organizzazione progetti modulari
Creazione di “features” custom modules
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

RECENSIONI
COSA INCLUDE IL CORSO
Corso di formazione on-site
16 ore
CheatSheet Angular
PDF formato A4
CheatSheet Javascript ES6
PDF formato A4
Centinaia di slides
Accesso Area Studenti
Esercitazioni post-corso
Accesso Area Studenti
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?





