IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

Angular Discussion :

Angular 9.0 disponible. Par d�faut, toutes les applications vont utiliser le compilateur et le runtime Ivy


Sujet :

Angular

  1. #1
    Chroniqueur Actualit�s

    Homme Profil pro
    Administrateur de base de donn�es
    Inscrit en
    Mars 2013
    Messages
    9 477
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activit� : Administrateur de base de donn�es

    Informations forums :
    Inscription : Mars 2013
    Messages : 9 477
    Par d�faut Angular 9.0 disponible. Par d�faut, toutes les applications vont utiliser le compilateur et le runtime Ivy
    Angular 9.0 est disponible. Par d�faut, toutes les applications vont utiliser le compilateur et le runtime Ivy
    L'�quipe explique les avantages apport�s par ce moteur de rendu

    Dans sa version 6.0, le framework JavaScript Angular a �t� livr� avec un nouveau moteur de rendu appel� Ivy. � Vous aimez Angular, mais vous souhaitez juste qu'il soit plus petit, plus facile � d�boguer, et compil� plus rapidement ? Ce sont nos objectifs avec le nouveau moteur de rendu d'Angular nomm� Ivy � expliquait alors Google � propos d'Ivy. Selon l'�quipe Angular, ce moteur de rendu est ax� sur l'am�lioration de la vitesse et acc�l�re la compilation. Ivy faisait la promesse aux d�veloppeurs de r�duire la taille du code et de leur apporter une flexibilit� accrue. L'�quipe Angular a indiqu� en outre que le passage au nouveau moteur de rendu se ferait en douceur.

    Dans la version 9.0 cette fois-ci toutes les applications vont utiliser le compilateur et le runtime Ivy par d�faut. L'outil a gagn� en maturit�. En effet, l'�quipe a not� qu'en plus des centaines de corrections de bogues, le compilateur Ivy et le runtime offrent de nombreux avantages :
    • tailles de paquets plus petites ;
    • des tests plus rapides ;
    • un meilleur d�bogage ;
    • une am�lioration au niveau des classes CSS et des liaisons de style ;
    • un v�rification de type am�lior�e ;
    • une am�lioration des erreurs de build ;
    • un temps de build am�lior�, une activation d'AOT par d�faut ;
    • l'am�lioration de l'internationalisation am�lior�e.


    Tailles de paquets plus petites

    Le compilateur Ivy a �t� con�u pour supprimer les parties d�Angular qui ne sont pas utilis�es via l�arborescence et pour g�n�rer moins de code pour chaque composant Angular.

    Gr�ce � ces am�liorations, les petites applications et les grandes applications peuvent voir les �conomies de taille les plus spectaculaires.
    • Les petites applications qui n'utilisent pas de nombreuses fonctionnalit�s Angular peuvent b�n�ficier le plus du tree-shaking (un terme couramment utilis� dans le contexte JavaScript pour parler de l'�limination du code mort).
    • Les grandes applications avec de nombreux composants peuvent b�n�ficier le plus de la taille d'usine r�duite.
    • Les applications de taille moyenne devraient voir des tailles de bundle �quivalentes ou l�g�rement plus petites, car elles b�n�ficient moins du tree-shaking et n'ont pas suffisamment de composants pour b�n�ficier d'une taille d'usine r�duite.


    Nom : ivy.png
Affichages : 200647
Taille : 49,5 Ko
    Les petites applications pourraient voir une diminution d'environ 30 % de la taille de l'ensemble, les grandes applications verront une diminution de 25 � 40% et les applications moyennes vont observer une diminution minimale

    Des tests plus rapides

    L'�quipe a travaill� sur l'impl�mentation de TestBed dans Ivy pour la rendre plus efficace.

    Auparavant, TestBed recompilait tous les composants entre l'ex�cution de chaque test, ind�pendamment du fait que des modifications aient �t� apport�es aux composants (par exemple, par le biais de remplacements) ou non.

    Dans Ivy, TestBed ne recompile pas les composants entre les tests sauf si un composant a �t� remplac� manuellement, ce qui lui permet d'�viter la recompilation entre la grande majorit� des tests.

    Avec ce changement, les tests d'acceptation de base du framework sont environ 40% plus rapides. L'�quipe s'attend � ce que les utilisateurs voient leur propre vitesse de test d'application �tre environ 40 � 50 % plus rapide.

    Meilleur d�bogage

    Ivy vous fournit plus d'outils pour d�boguer vos applications. Lorsque vous ex�cutez une application en mode Dev avec le runtime Ivy, il vous est propos� d�sormais le nouvel objet ng pour le d�bogage.
    • Vous pouvez demander � Angular l'acc�s aux instances de vos composants, directives, etc.
    • Vous pouvez appeler manuellement des m�thodes et mettre � jour l'�tat.
    • Lorsque vous souhaitez voir les r�sultats de la d�tection des modifications, vous pouvez d�clencher la d�tection des modifications avec applyChanges.


    Nom : ng.png
Affichages : 7571
Taille : 55,1 Ko

    Ivy am�liore �galement la trace de la pile pour les probl�mes de d�bogage tels que ExpressionChangedAfterItHasBeenCheckedError. Auparavant, la trace de la pile pouvait �tre inutile:

    Nom : pile1.png
Affichages : 7600
Taille : 97,5 Ko

    Avec Ivy, vous voyez une trace de pile plus utile qui vous permet de passer directement � l'instruction de mod�le avec l'expression qui a chang�.

    Nom : pile2.png
Affichages : 7551
Taille : 92,6 Ko

    Une am�lioration au niveau des classes CSS et des liaisons de style

    Le compilateur et le runtime Ivy fournissent des am�liorations pour la gestion des styles. Auparavant, si une application contenait des d�finitions concurrentes pour un style, ces styles se remplaceraient de mani�re destructive. Avec Ivy, les styles sont fusionn�s de mani�re pr�visible.

    Consid�rez les extraits de mod�le et de composant suivants :

    Code CSS : S�lectionner tout - Visualiser dans une fen�tre � part
    <my-component style="color:red;" [style.color]="myColor" [style]="{color: myOtherColor}" myDirective></div>

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    @Component({
      host: {
        style: "color:blue"
      },...
    })
    ...
     
    @Directive({
      host: {
        style: "color:black",
        "[style.color]": "property"
      },...
    })
    ...
    Auparavant, la derni�re liaison � �tre �valu�e aurait �t� gagnante et cela pouvait d�pendre du moment des modifications de ces expressions. Si myColor et myOtherColor n'�taient pas d�finis, le style statique red aurait �t� ignor�.

    Avec la version 9, vous pouvez g�rer vos styles selon un ordre de priorit� clair et coh�rent qui ne d�pend pas du timing. Les styles les plus sp�cifiques ont toujours la priorit� la plus �lev�e. Par exemple, une liaison � [style.color] remplace une liaison conflictuelle � [style].

    Cependant, pour des raisons de compatibilit� descendante, l'�quipe a laiss� le comportement des liaisons [ngStyle] et [ngClass] �tre le m�me qu'auparavant. Lorsque leurs valeurs de liaison sont mises � jour, les nouvelles valeurs remplaceront toutes les liaisons concurrentes.

    En tant qu'effet secondaire du refactoring de style, vous pouvez d�sormais �galement lier des propri�t�s personnalis�es CSS (�galement appel�es variables CSS).

    Code CSS : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    <div [style.--main-border-color]=" '#CCC' ">
      <p style="border: 1px solid var(--main-border-color)">hi</p>
    </div>

    V�rification de type am�lior�e

    Le compilateur Angular peut v�rifier plus de types de votre application et appliquer des r�gles plus strictes. Ces fonctionnalit�s vous aideront, vous et votre �quipe, � d�tecter les bogues plus t�t dans le processus de d�veloppement.

    Le framework prend en charge deux indicateurs principaux pour les v�rifications de type suppl�mentaires en plus de la valeur par d�faut :
    • fullTemplateTypeCheck - L'activation de cet indicateur indique au compilateur de tout v�rifier dans votre mod�le (ngIf, ngFor, ng-template, etc.) ;
    • strictTemplates - L'activation de cet indicateur appliquera les r�gles de syst�me de type les plus strictes pour la v�rification de type.

    Am�lioration des erreurs de build

    Le nouveau compilateur Ivy est non seulement plus rapide et offre une plus grande s�curit� de type, il facilite �galement la lecture de tous les messages d'erreur.

    Dans la version 8 ou View Engine, une erreur de compilation typique ressemblerait � ceci:

    Nom : erreur1.png
Affichages : 7497
Taille : 48,0 Ko

    Dans la version 9 avec Ivy, la m�me erreur ressemble � :

    Nom : erreur2.png
Affichages : 7501
Taille : 39,8 Ko

    Des mises � jour ng plus fiables

    Le framework a b�n�fici� de quelques modifications au fonctionnement de ng update pour rendre la fonctionnalit� plus fiable et informative.
    • Utilisez toujours la derni�re CLI. � partir de la 8.3.19 de la CLI, le framework utilise maintenant la CLI de la version mise � jour TARGET lors des mises � jour. Cela signifie qu'� l'avenir, les mises � jour seront toujours g�r�es automatiquement par la derni�re CLI.
    • Mises � jour de progression plus claires. ng update fait maintenant plus pour vous dire ce qui se passe sous le capot. Pour chaque migration, vous verrez des informations sur la migration.
    • D�bogage des mises � jour plus facile. Par d�faut, ng update ex�cute toutes les migrations et laisse les modifications agr�g�es sur le disque pour que vous puissiez les inspecter. La mise � jour de la version 9 introduit �galement le nouvel indicateur --create-commits. Lorsque vous ex�cutez ng update --create-commits, l'outil valide l'�tat de votre base de code apr�s chaque migration, afin que vous puissiez parcourir et comprendre ou d�boguer les modifications qui sont apport�es � votre code.

    De nouveaux composants

    Vous pouvez d�sormais inclure des fonctionnalit�s de YouTube et de Google Maps dans vos applications.
    • Vous pouvez afficher un lecteur YouTube dans votre application avec le nouveau youtube-player. Apr�s avoir charg� l'API du lecteur YouTube IFrame, ce composant en tirera parti.
    • Le framework s'accompagne �galement des composants google-maps. Ces composants facilitent le rendu de Google Maps, l'affichage des marqueurs et le c�blage de l'interactivit� d'une mani�re qui fonctionne comme un composant Angular normal, vous �vitant d'avoir � apprendre la totalit� de l'API Google Maps.

    Prise en charge de TypeScript 3.7

    Angular a �t� mis � jour pour fonctionner avec TypeScript 3.6 et 3.7, y compris la fonction de cha�nage facultative extr�mement populaire de TypeScript 3.7. Pour rester en phase avec l'�cosyst�me, l'�quipe a �galement mis � jour sa version d'autres d�pendances de l'�cosyst�me telles que Zone.JS et RxJS.

    Source : blog Angular
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et R�digez des actualit�s

  2. #2
    Membre actif Avatar de sitexw
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    F�vrier 2015
    Messages
    44
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur Web

    Informations forums :
    Inscription : F�vrier 2015
    Messages : 44
    Par d�faut
    Cool 👍

  3. #3
    Membre tr�s actif
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Janvier 2019
    Messages
    707
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 43
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur Web
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Janvier 2019
    Messages : 707
    Par d�faut
    merci pour les infos !

  4. #4
    Mod�rateur
    Avatar de grunk
    Homme Profil pro
    Lead d�v - Architecte
    Inscrit en
    Ao�t 2003
    Messages
    6 693
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 40
    Localisation : France, C�te d'Or (Bourgogne)

    Informations professionnelles :
    Activit� : Lead d�v - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Ao�t 2003
    Messages : 6 693
    Par d�faut
    A peine 1% de gain pour ma part sur une app avec ~40 composants
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre tr�s actif
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Janvier 2019
    Messages
    707
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 43
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur Web
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Janvier 2019
    Messages : 707
    Par d�faut
    avec une grosse application que j'ai d�velopp�, en passant donc vers Angular 9 et son nouveau moteur ivy. Je constate une rapidit� d�ex�cution assez bluffante !

  6. #6
    Membre exp�riment� Avatar de RPGamer
    Homme Profil pro
    Ing�nieur en syst�mes embarqu�s
    Inscrit en
    Mars 2010
    Messages
    168
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 35
    Localisation : Suisse

    Informations professionnelles :
    Activit� : Ing�nieur en syst�mes embarqu�s

    Informations forums :
    Inscription : Mars 2010
    Messages : 168
    Par d�faut
    L'ajout de composants YouTube et Google Maps est une excellente id�e.

    Les nombreux apports et gains en temps de compilation et en performances du compilateur Ivy sont aussi apr�ciables.

Discussions similaires

  1. [EDI] r�pertoire par d�faut pour les projets
    Par jcs2 dans le forum Delphi
    R�ponses: 2
    Dernier message: 01/09/2006, 13h06
  2. probl�me avec m�dia player par d�faut pour les vid�os ?
    Par tomguiss dans le forum Balisage (X)HTML et validation W3C
    R�ponses: 3
    Dernier message: 18/10/2005, 14h08
  3. R�ponses: 1
    Dernier message: 16/02/2005, 12h04
  4. R�ponses: 6
    Dernier message: 28/09/2004, 16h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo