E’ arrivato Angular 11! La nuova versione coinvolge diversi aspetti del framework, dal framework stesso ai Componenti per passare alla Command Line Interface(CLI). Come sempre l’aggiornamento rende più funzionale e ricco il framework.
Per aggiornare alla versione 11 potete visitare il sito update.angular.io, vi mette a disposizione un form da compilare indicando da quale versione migrate e vi indica cosa dovete fare.
Operation Byelog
Con questo aggiornamento, come promesso nella Roadmap Ufficiale, si è voluto dare una sferzata alla risoluzione di vecchi bug e segnalazioni della community rimaste appese nel tempo, infatti la nuova release include più di 100 commit.
Inline automatico dei font
Al fine di velocizzare il rendering applicativo anche chiamato First Contentful Paint (FCP) e quindi migliorare le performance generali, durante la compilazione, la Angular CLI automaticamente effettuerà il download e l’inserimento in linea (inline) dei font utilizzati linkandoli all’interno dell’applicazione. Sarà un processo automatico e dovrete solo beneficiare di questa novità.
Component Test Harness
La Component Test Harness è stata introdotta in Angular 9 per fornire una superficie di API che aiutasse a testare le componenti di Angular Material. Con questo rilascio tale funzionalità è stata resa disponibile per tutte le componenti del framework.
Grazie alla funzione parallel è possibile rendere operativi in maniera simultanea test asincroni di interazione con le componenti. Mentre grazie a manualChangeDetection gli sviluppatori potranno effettuare un tuning granulare del comportamento applicativo durante il change detection.
L’argomento, probabilmente, è complesso e per questo vi consigliamo, per chi volesse approfondire, di leggere la documentazione ufficiale sul Component Test Harness.
Miglioramento del Reporting e del Logging
Log e Report fanno parte della vita di ogni sviluppatore, per questo, nella versione 11 i sistemi di Reporting e Logging sono stati ulteriormente migliorati per renderli di semplice lettura.
Language Service Preview
La funzionalità di Angular Language Service aiuta gli sviluppatori durante lo sviluppo e con questo aggiornamento c’è stato un deciso utilizzo dell’engine Ivy migliorando l’esperienza complessiva e potendo fornire informazioni più utili agli sviluppatori come la possibilità di inserire i tipi di dati nelle funzioni in stile TypeScript.
Hot Module Replacement (HMR)
Finora la funzionalità di HMR, vale a dire la possibilità di aggiornare l’applicazione a runtime, richiedeva configurazioni e tuning del codice sorgente. Ora, invece è possibile abilitare HRM lanciando il comando ng serve –hmr .
Build Rapide
Con la versione 11 il processo di ngcc update è più veloce dalle 2 alle 4 volte della versione precedente, mentre con TypeScript v4.0 l’intero processo di build è molto più rapido.
Supporto sperimentale a Webpack 5
E’ possibile sperimentare la module federation di Webpack 5 ed iniziare da operare con disk caching e tree-shaking. Essendo sperimentale è opportuno evitare di utilizzare Webpack 5 in ambienti di produzione.
Linting
Linting è il processo per analizzare il codice alla scoperta di bug, warnings, stili, cambiamenti e tutto quanto è correlato.
Le versioni precedenti di Angular contenevano un’implementazione di default per il linting(TSLint). TSLint è stata deprecata ed ora è consigliato migrare verso ESLint disponbile in vari progetti: typescript-eslint, angular-eslint and tslint-to-eslint-config.
Nelle prossime versioni di Angular il supporto a ESLint sarà nativo.
Deprecazioni
Con questa versione è stato rimosso il supporto a IE9/IE10 e IE Mobile, mentre rimane IE11, l’unica ancora supportata.
Sono state contestualmente deprecate alcune API, per una lista completa potete visitare il seguente link.
Glue Labs e Angular
Utilizziamo Angular dalla sua nascita, realizziamo applicazioni, forniamo formazione avanzata e assistenza specialistica in modalità body rental, training on job e con piani di supporto tecnico. Abbiamo realizzato progetti complessi con numerosi Clienti che coinvolgevano integrazione in ambito OT, IoT, Cloud e Mobile con sviluppo cross-platform. Contattaci subito e senza impegno per un preventivo gratuito.