La version 8.0.0 du framework Angular est publiée
Une version majeure qui améliore le temps de démarrage des applications

Le , par Bill Fassinou

63PARTAGES

14  0 
En respect de son cycle de publication d’une nouvelle version du framework tous les six mois, Google vient d’annoncer la sortie de la version 8 d’Angular. Comme toute nouvelle version, Angular 8.0 apporte de nouvelles fonctionnalités notamment un chargement différentiel de JavaScript, une nouvelle API Builders pour permettre aux développeurs d’outils de remplacer le comportement des commandes de la CLI telles que la construction et le test et une réduction de la taille des téléchargements d'archives transitives d’environ 60 %.

Pour rappel, Angular est un framework côté client open source basé sur TypeScript dirigée par l'équipe du projet Angular à Google et par une communauté de particuliers et de sociétés. Angular est une réécriture complète de AngularJS, un framework construit par la même équipe. Angular n'a pas de notion de “portée” ou de contrôleurs, au lieu de cela il utilise une hiérarchie de composants comme principale caractéristique architecturale. Angular a une syntaxe d'expression différente. Il utilise les “[ ]” pour la liaison des propriétés et les “( )” pour les liaisons d’événements.

La version 7 du framework a été publiée en octobre passé avec une variété de nouvelles fonctionnalités et certaines améliorations. Parmi celles-ci, on peut noter l’amélioration des performances des applications par l’automatisation de l’ajout ou du retrait des métadonnées de réflexion, réduisant ainsi la charge des applications une fois en production ; la documentation CLI a été intégrée à la documentation principale angular.io ; introduction de la fonctionnalité du glisser/déposer qui permet de créer une interface utilisateur qui peut être utilisée pour glisser, déposer, trier et transférer des éléments librement dans une liste ; l’amélioration du routeur pour permettre désormais à l’interface CanLoad de contenir UrlSegment pour stocker les URL vers lesquelles un utilisateur va essayer de naviguer et pourra être redirigé ultérieurement.


Dans Angular 8.0 publié cette semaine, Google et la communauté autour du framework ont apporté une fois de plus de nouvelles fonctionnalités à l’outil de développement. L’équipe Angular a apporté le chargement différentiel de JavaScript comme nouvelle fonctionnalité dans cette version du framework, mais également la prise en charge de l’importation dynamique d'EmcScript pour améliorer le chargement lent des routes, une API Builders pour la CLI, la télémétrie CLI et le regroupement de WebWorker est maintenant automatique dans la CLI. Notons que la CLI est un outil de ligne de commande permettant de créer des applications Angular. Il est recommandé d'utiliser Angular CLI pour créer des applications Angular, car vous n'avez pas besoin de perdre du temps à installer et à configurer toutes les dépendances requises et à tout câbler ensemble. Passons en revue le contenu des fonctionnalités les plus mises en avant d’Angular 8.0 par l’équipe de développement :

Le chargement différentiel de JavaScript moderne

Le chargement différentiel est une fonctionnalité du système de construction de la CLI. Il construit deux versions de votre application. Une version est destinée aux navigateurs modernes, avec une taille de paquet JS 10 à 30 % fois plus petite et moins de polyfill requis. La deuxième version fonctionne dans les navigateurs plus anciens. Au cours de cette opération, ng update apportera des modifications mineures à votre application pour permettre à tous les navigateurs de télécharger automatiquement les ensembles les mieux adaptés. Cette modification ne nécessite aucune modification d'infrastructure serveur. La modification est activée par défaut via le champ target défini dans es2015 du fichier tsconfig.json de votre application. Si cette modification interrompt votre application, vous pouvez rétablir la valeur es5, ce qui désactive le chargement différentiel.

La prise en charge de l’importation dynamique d’EcmaScript

Angular 8.0 apporte la prise en charge de l'importation dynamique EcmaScript avec la fonction import() pour le chargement lent des routes. Cela aligne Angular avec la spécification JavaScript et rend votre application plus compatible avec l'outillage. En faisant ng update, il changera automatiquement la syntaxe de loadChildren en import().

Le regroupement de WebWorker est maintenant automatique

Le regroupement de WebWorker est maintenant automatique dans la CLI. Cela vous permet d’écrire facilement du code qui déplace des calculs coûteux vers un thread séparé et de les regrouper dans un script distinct qui fonctionne dans le navigateur.

La télémétrie CLI

La télémétrie CLI est une fonctionnalité d'activation qui vous permet de rapporter des données d'utilisation de la CLI à l'équipe Angular, ainsi qu'à votre propre compte Google Analytics. Cela nous permet de prendre de meilleures décisions quant aux fonctionnalités de la CLI à prioriser et de mesurer l'impact de nos améliorations.

L’API Builder

Builder est une nouvelle API de la CLI qui permet aux développeurs d’outils de remplacer le comportement des commandes de la CLI telles que la construction et le test. Avant la version 8.0.0, nous ajouterons de la documentation. Dans le cadre de la version 8.0.0, l’équipe Angular dit travailler avec des fournisseurs de cloud pour tirer parti d’Architect afin de fournir une nouvelle commande de déploiement. Parallèlement à Architect, il y aura également l’ajout d’une nouvelle API Workspace pour les outils devant lire ou écrire le fichier angular.json.

Des améliorations sur la migration AngularJS

Si vous utilisez le service $location dans une application AngularJS, Angular fournit désormais un service LocationUpgradeModule permettant un service de localisation unifié qui déplace les responsabilités du service $location d’AngularJS vers le service Location d’Angular.

D’autres fonctionnalités dans cette version sont à noter dans la note de publication d’Angular 8.0. Vous pouvez également consulter la documentation pour en savoir plus.

Sources : GitHub, Angular

Et vous ?

Que pensez-vous de cette nouvelle version d'Angular ?

Voir aussi

La release candidate 1 d'Angular 7 est disponible, la sortie de la version stable est prévue pour fin octobre

Les Pipes : Guide Complet,Apprendre à utiliser des pipes avec Angular 6

La version 5.0 du framework Bootstrap va supprimer jQuery, sa plus grande dépendance côté client pour du pur JavaScript

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de Pierre Louis Chevalier
Expert éminent sénior https://www.developpez.com
Le 30/05/2019 à 18:25
Très bonne release cette version 8

La caractéristique principale parmi tant d'autres est le chargement différentiel, qui chargera différentes versions de l'application en fonction des capacités du navigateur.
Ceci évite d'installer pleins de polyfills ce qui réduit notablement la taille du Bundle.

 
Contacter le responsable de la rubrique Développement Web

Partenaire : Hébergement Web