.Net 6 Preview 5 est disponible

Par:
fredericmazue

lun, 21/06/2021 - 15:46

Microsoft a annoncé la disponibilité de .Net 6 Preview 5 tout en indiquant pour l'occasion que le développement de .Net 6 est maintenant à mi-parcours, et que des fonctionnalités importantes commencent à se rassembler au sein de ce nouveau framework dont la sortie de la version finale est prévue pour novembre 2021.

En ce qui concerne les nouvelles fonctionnalités de .Net 6 Preview 5, Microsoft met particulièrement en avant l'améliorations des charges de travail optionnelles, ou Optional SDK Workloads, dans le SDK .NET. Les charges de travail du SDK sont une nouvelle fonctionnalité du SDK .NET, apparue avec .Net 6 Preview 4, qui permet d'ajouter la prise en charge de nouveaux types d'applications, comme les mobiles et WebAssembly, sans augmenter la taille du SDK.

La fonctionnalité de charges de travail a été mise à jour pour inclure les verbes list et update. Ces nouvelles capacités donnent une idée de l'expérience finale attendue. Avec elles, vous serez en mesure d'établir rapidement votre environnement préféré avec quelques commandes simples et de le maintenir à jour au fil du temps.

  • dotnet workload list vous indiquera les charges de travail que vous avez installées.
  • dotnet workload update mettra à jour toutes les charges de travail installées vers la dernière version disponible.

Le verbe update interroge les manifestes nuget.org pour les charges de travail mises à jour, met à jour les manifestes locaux, télécharge les nouvelles versions des charges de travail installées, puis supprime toutes les anciennes versions d'une charge de travail. Ceci est analogue aux commandes apt update and apt upgrade -y utilisées sur les distributions Linux basées sur Debian.

Les commandes dotnet workload fonctionnent dans le contexte du SDK donné. Imaginez que .NET 6 et .NET 7 soient installés. Si vous utilisez les deux, les commandes de charges de travail fourniront des résultats différents car les charges de travail seront différentes (au moins des versions différentes des mêmes charges de travail).

En résumé, la fonctionnalité de charges de travail est essentiellement un gestionnaire de packages pour le SDK .NET.

On remarquera encore, dans .NET 6 Preview 5, la nouvelle bibliothèque de génération de sources JsonSerializer

L'épine dorsale de presque tous les sérialiseurs .NET est la réflexion. La réflexion est une capacité importante pour certains scénarios, mais pas comme base d'applications cloud natives hautes performances (qui (dé)sérialisent et traitent généralement de nombreux documents JSON). La réflexion est un problème pour le démarrage , l'utilisation de la mémoire et le découpage de l'assemblage .

L'alternative à la réflexion à l'exécution est la génération de source au moment de la compilation. Les générateurs de sources génèrent des fichiers source C# qui peuvent être compilés dans le cadre de la construction de la bibliothèque ou de l'application. La génération de code source au moment de la compilation peut offrir de nombreux avantages aux applications .NET, notamment des performances améliorées.

Dans .NET 6, Microsoft inclut un nouveau générateur de source dans System.Text.Json. Le générateur de source JSON fonctionne en conjonction avec JsonSerializer, et peut être configuré de plusieurs manières. C'est à vous de décider si vous utilisez le nouveau générateur de source. Celui-ci peut offrir les avantages suivants :

  • Réduire le temps de démarrage
  • Améliorer le débit de sérialisation
  • Réduire l'utilisation de la mémoire privée
  • Supprimer l'utilisation de System.Reflection et System.Reflection.Emit
  • Permet une sérialisation JSON compatible avec les trims

.Net 6 Preview 5 peut être téléchargé ici pour Windows, Linux et macOS.