Quoi de neuf dans le langage Dart 2.2 de Google

Le langage Dart de Google, autrefois positionné comme un remplaçant potentiel de JavaScript dans le navigateur, a été redémarré pour le développement Web et mobile côté client avec la sortie de Dart 2 en août 2018. Dart 2.2 est maintenant disponible.

Dart 2 propose un système de type renforcé, une syntaxe nettoyée et une chaîne d'outils de développeur reconstruite. Dart a une syntaxe succincte et peut s'exécuter sur une machine virtuelle avec un compilateur juste à temps, le compilateur permettant un rechargement à chaud avec état pendant le développement mobile.

Les développeurs bénéficient également de cycles de développement rapides où le code peut être modifié, compilé et remplacé dans les applications exécutées sur un appareil. La compilation du code à l'avance permet un démarrage rapide, a déclaré Google.

Dart peut être compilé en code natif pour les plates-formes ARM et x86. Google a utilisé le langage pour créer des applications pour iOS, Android et le Web.

Où télécharger Dart 2

Vous pouvez télécharger la version de production de Dart 2 sur dartlang.org.

Nouvelle version: Quoi de neuf dans Dart 2.2

Sorti en février 2019, Dart 2.2. améliore les performances du code natif compilé à l'avance (AOT), en réduisant la surcharge des appels statiques. Le code optimisé peut désormais appeler la destination directement à l'aide d'un appel relatif au PC. Auparavant, plusieurs recherches dans un pool d'objets devaient être effectuées pour déterminer une adresse de destination. Les optimisations sont particulièrement utiles lorsque le code a beaucoup d'appels de constructeurs et de méthodes statiques, tels que le code Flutter UI qui crée des widgets.

Les autres nouvelles fonctionnalités de Dart 2.2 incluent:

  • Les littéraux ont été étendus pour prendre en charge les ensembles, offrant une nouvelle syntaxe pratique. Les ensembles sont des collections de valeurs non ordonnées où chaque valeur ne peut se produire qu'une seule fois et les développeurs peuvent vérifier si une valeur fait partie d'un ensemble. Auparavant, la syntaxe littérale ne prenait en charge que les listes et les cartes.
  • La spécification de la langue a été mise à jour.

Version précédente: Quoi de neuf dans Dart 2.1

La mise à jour Dart 2.1 de novembre 2018 propose une taille de code plus petite, une meilleure facilité d'utilisation pour les erreurs de type, des vérifications de type plus rapides et des capacités pour améliorer la productivité lors de la création d'expériences utilisateur. La taille du code et le temps de compilation ont été améliorés pour les déploiements Web. L'équipe du projet Dart s'est concentrée sur la taille de sortie de Dartjs, le compilateur Dart-to-JavaScript. Ils rapportent une réduction de 17 pour cent de la taille de sortie minifiée et une amélioration de 15 pour cent du temps de compilation dans un échantillon d'expérience.

La prise en charge de int-to- doubleconversion, quant à elle, signifie que Dart 2.1 peut déduire où un entier doit être évalué en silence comme une doublevaleur. Michael Thomsen de Google, chef de produit pour Dart et la boîte à outils mobile Flutter, a déclaré que les développeurs Flutter sont souvent déclenchés par des erreurs d'analyse lorsqu'une API attend un double, mais que les développeurs spécifient un int. La nouvelle capacité de conversion dissipe la confusion.

Les autres nouvelles fonctionnalités de Dart 2.1 incluent:

  • Les vérifications de type à la compilation, qui étaient incomplètes dans Dart 2.0, ont été effectuées dans la version 2.1. L'incomplétude précédente aurait pu causer des problèmes d'utilisabilité, dans lesquels un mauvais code source aurait pu être compilé sans produire d'erreurs.
  • Le coût des vérifications de type a été réduit pour le code compilé AOT et le code exécuté dans la VM avec compilation JIT. Cela devrait aider à améliorer les performances des développeurs Flutter.
  • Une nouvelle syntaxe pour les mixins est introduite, avec un mixinmot clé pour définir des classes qui ne peuvent être utilisées que comme mixins. De plus, les mixins peuvent maintenant étendre d'autres classes  Objectet invoquer des méthodes dans leur superclasse.

Thomsen a également offert un aperçu de ce que les utilisateurs de Dart pourraient voir en 2019:

  • Davantage d'améliorations des performances, notamment une meilleure prise en charge des processeurs multicœurs et une réduction supplémentaire de la taille du code pour améliorer les temps de téléchargement et de démarrage.
  • Raffinements des expressions constantes et prise en charge d'un nouveau Setlittéral.
  • Optimisations supplémentaires pour aider à créer des interfaces utilisateur, telles que les conditions dans les listes de widgets, l'expansion des collections d'objets dans d'autres objets et la suppression du besoin de terminer les instructions par des points-virgules.

Version précédente: Quoi de neuf dans Dart 2.0

Sorti en août 2018, Dart 2.0 propose un langage, un cadre et des composants destinés à réduire le passe-partout tout en permettant aux développeurs de se concentrer sur la logique métier. La plate-forme comprend également des outils permettant d'identifier rapidement les erreurs et de fournir un petit code d'exécution rapide. Dart Version 2 se concentre sur trois domaines:

  • Renforcer et resserrer la langue.
  • Prise en charge des cadres Web et mobiles.
  • Extension des outils et des composants qui prennent en charge l'utilisation de la langue par Google au monde extérieur.

Les nouvelles fonctionnalités de Dart 2.0 incluent:

  • Typage fort pour détecter les bogues plus tôt, améliorer la qualité et améliorer les applications créées par de grandes équipes. Le système de type de Dart 2 détecte plus d'erreurs plus tôt dans le cycle de développement.
  • L'inférence de type est fournie pour les champs, les méthodes, les variables locales et la plupart des arguments de type génériques.
  • Le SDK principal contient des bibliothèques pour accéder aux API de navigateur modernes.
  • Le framework Web AngularDart 5, inspiré du framework Angular lui-même, est inclus.
  • Le SDK Dart, qui dispose d'un gestionnaire de packages qui fonctionne avec le site de packages Dart. Il comprend également un analyseur statique, un linter et des outils de documentation Web et de formatage de code.
  • Accédez à 100 nouvelles classes, y compris la date, l'heure et les composants Google Material.
  • Prise en charge de l'éditeur de code Visual Studio de Microsoft, via l'extension de code Dart.
  • L'application de bloc-notes DartPad a été mise à jour pour Dart 2.
  • Définition de l'interface utilisateur en tant que code afin de réduire la nécessité de basculer entre un langage de balisage d'interface utilisateur et le langage de programmation
  • Le langage a des bibliothèques spécifiques au Web telles que dart:htmlet un cadre Web complet.