Angular è una moderna piattaforma di sviluppo di applicazioni web che fornisce agli sviluppatori un set completo di strumenti per costruire applicazioni robuste e scalabili.
La proposta di valore principale di Angular è quella di rendere possibile la costruzione di applicazioni che funzionano per quasi tutte le piattaforme, siano esse mobili, web o desktop.
Il corso su Angular ha lo scopo di insegnare lo sviluppo di web app e Single Page Application in Angular e Typescript, scrivere codice scalabile, modulare ed integrare gli Unit Test e molto altro ancora.
OBIETTIVI DEL CORSO
Al termine del corso i partecipanti saranno in grado di:
- sviluppare Single Page Application in Angular e Typescript utilizzando un approccio component-based, sfruttando la CLI
- creare componenti, forms e comunicare con un backend REST
- utilizzare pipes e servizi via dependency injection
- sviluppare il front end di applicazioni web multi-view con angular router, autenticazione via token e gestione della sicurezza con i Guards
- creare attribute e structural directives
- organizzare progetti angular, applicare metodologie e best practices
- scrivere righe di codice scalabile, modulare ed integrare gli Unit Test
PREREQUISITI: richiesta una conoscenza di base di HTML, Javascript e CSS
PROGRAMMA DEL CORSO
- Javascript ES2015 (Object literals, Default parameters, Template literals, Multiline strings, Array rest, Array spread, Block scoping, Destructuring, Arrow function, Moduli, Classi, Nuove funzioni e oggetti)
- Typescript (Tipi ed esempi di utilizzo, Interfacce, Generics, Decorators)
- Angular (Introduzione ad Angular e applicazione component-based, Panoramica sull’architettura di un’applicazione Angular, AngularCLI e principali comandi, Utilizzo di Boostrap e Font-Awesome, Strutturazione del progetto)
- Componenti (Introduzione ai componenti, Introduzione ai metadati di un componente, Template e Views, Interpolation e Property binding, Event Binding, Ciclo di vita di un componente, Ng-Content Template reference, ViewChild/ ViewChildren – ContentChild / ContentChildren, ngStylee ngClassìIntroduzionealle direttive strutturali -*ngFor,*ngIf,*ngSwitch)
- Servizi (Introduzione ai servizi, Registrazione di un componente – useClass, useFactory, useValue, useExisting – Creazione di un servizio, Injection Token, Creazione di un servizio che esegue chiamate http, Utilizzo di json-server come backend REST)
- Template driven Forms (Introduzione alle form, Utilizzo dell’approccio template driven, Direttivang Model / ngForm, Stato della form e dei controlli, Validazione)
- Pipes (Introduzione ai pipes, Utilizzo dei pipe predefiniti, Creazione di un pipe custom)
- Moduli (Introduzione ai moduli, Introduzione ai metadati di un modulo, Best Practice, Creazione di un modulo, Introduzione al routing, Definizione delle rotte, Registrazione delle rotte, Navigazione via template con RouterLink, Navigazione via codice con Router, Params e QueryParams, Snapshot, ChildRoutes, LazyLoading)
- Guards (Introduzione ai guards – CanActivate, CanActivateChild,
CanDeactivate, CanLoad, Resolve – Utilizzo dei vari tipi di guards, Passaggio di parametri) - RxJS (Introduzione alla programmazione reattiva, Creazione di un Observable, Observable e native element, Punti di attenzione
- Form Model driven (Introduzione all’approccio model driven, FormGroup/ FormControl / FormArray, ObservableFormControl / FormGroup, PatchValue/ SetValue
- Direttive (Introduzione alle direttive – Componenti, Attribute,
Structural – Creazione di direttive custom (attribute), Creazionedi direttive customer (structural)) - Build & Deploy (ngserve, ngbuild, Creazione di environments custom
- Extra (HttpInterceptor, GlobalErrorHandler, Introduzione al testing e ai vari framework – Unit, Integration – Libreriee link utili – Bootstrap,
NgxTranslate, Update & caching, Redux, ServerSide Rendering,
NativeScript/ Ionic)