AccueilActualités informatiqueMicrosoft livre .NET 6

Microsoft livre .NET 6

Dans le cadre de .NET Conf 2021, Microsoft a annoncé la disponibilité de .NET 6 « RTM ». L’une des nouveautés de .NET 6 est la fonction Hot Reload, que Microsoft propose pour la plupart des types d’applications. Les développeurs peuvent l’utiliser pour apporter des modifications au code d’une application en cours d’exécution sans devoir la redémarrer et perdre son état.

Chronique du développement de .NET 6

Ceux qui s’intéressent au développement de la nouvelle version LTS de .NET peuvent en prendre connaissance dans les nouvelles d’accompagnement du Dr Holger Schwichtenberg. Voici un aperçu chronologique :

  • 30 novembre 2020 : Microsoft présente les premiers plans pour .NET 6

  • 18 février 2021 : Microsoft publie la première version préliminaire de .NET 6

  • 12 mars 2021 : Développement multiplateforme – un premier aperçu de MAUI dans .NET 6.0 Preview 2

  • 9 avril 2021 : Blazor fonctionne aussi sur le bureau dans .NET 6 Preview 3

  • 26 mai 2021 : Build 2021 – .NET 6 Preview 4 avec des outils pour le développement multiplateforme

  • 18 juin 2021 : .NET 6 – Le cinquième aperçu apporte de nouveaux outils et une nouvelle coquille pour MAUI.

  • 15 juillet 2021 : .NET 6 – L’aperçu 6 met l’accent sur le développement Web.

  • 18 août 2021 : .NET 6 – L’aperçu 7 apporte des modèles et des API mis à jour

  • 15 septembre 2021 : prêt pour la production – première version candidate de .NET 6

  • 13 octobre 2021 : .NET 6 entre dans la dernière ligne droite avec la RC2

Sommaire

Peu avant l’échéance, Microsoft a voulu limiter cette fonction de productivité aux utilisateurs de Visual Studio 2022 (et donc aux clients payants et au système d’exploitation Windows). Toutefois, après avoir essuyé de vives critiques de la part de ses clients, l’entreprise a fait marche arrière trois jours plus tard et propose désormais Hot Reload avec l’outil en ligne de commande gratuit et neutre en termes de plate-forme, dotnet watch. Dans les deux outils, cependant, il existe encore des restrictions concernant les modifications autorisées.

Comme pour les versions précédentes, Microsoft a une fois de plus investi beaucoup de travail pour optimiser la vitesse de l’environnement d’exécution et de la bibliothèque de classes. Un document détaillé décrit les nombreuses améliorations apportées à la bibliothèque de classes de base. De même, dans le CLI .NET, des commandes telles que dotnet new, dotnet build et dotnet run il y a des optimisations.

Lors de la création de WebAPIs, les développeurs peuvent désormais transférer les données de la base de données vers le sérialiseur JSON System.Text.Json via IAsyncEnumerable<T> streaming, ce qui permet d’éviter la surcharge mémoire liée à la mise en mémoire tampon. Pour accélérer la (dé)sérialisation JSON, ils peuvent également utiliser un générateur de code source qui génère le code de sérialisation au moment du développement.

Lire aussi

Pour les applications C# exécutées dans le navigateur, Microsoft Blazor propose WebAssembly comme variante compilée en amont. Ici, au lieu d’un code en langage intermédiaire Microsoft qui doit encore être interprété, le code à octets de WebAssembly est chargé directement dans le navigateur. L’ambitieux projet visant à proposer un compilateur AOT général pour tous les types d’applications .NET comme alternative au compilateur juste-à-temps a échoué pour l’instant et n’est encore qu’une expérience sur GitHub (voir NativeAOT).

Pour la première fois depuis des années, Microsoft offre un bouquet plus large de nouveaux ajouts à la bibliothèque de classes de base .NET. Il s’agit notamment des nouveaux types de données DateOnly et TimeOnly, des nouveaux opérateurs LINQ DistinctBy(), UnionBy(), IntersectBy(), ExceptBy(), MaxBy(), MinBy() et Chunk() ainsi que d’un ensemble FIFO avec des priorités lors de la permutation : PriorityQueue<T, TPrio&gt ;.

Il est intéressant de noter que Microsoft a ajouté à la bibliothèque de classes de base de .NET 6 des opérations de bas niveau qui étaient auparavant désapprouvées dans .NET. Il s’agit notamment de l’allocation directe de mémoire avec la classe System.Runtime.InteropServices.NativeMemory et de l’accès de bas niveau au système de fichiers sans flux avec la classe System.IO.RandomAccess.

.NET 6 : événement en ligne pour la nouvelle version LTS

Online-Konferenz zu .NET 6 am 23.11.2021, von  und IT-Visions.de zum neuen LTS-Release

Le 23 novembre 2021, les événements suivants se dérouleront et la société du Dr Holger Schwichtenberg IT-Visions.de un événement en ligne sur la nouvelle version LTS : .NET 6 est la base de tous les programmes qui s’appuient sur la plateforme de développement de Microsoft. La conférence en ligne donne une vue d’ensemble et aide à évaluer si le changement en vaut déjà la peine.

C’est de cela qu’il s’agit :

  • Migration : Quand et comment passer à .NET 6
  • Quelles sont les nouveautés de .NET 6 ?
  • Découvrez les nouvelles fonctionnalités d’ASP.NET Core 6 et de Blazor 6.
  • Principales innovations de C# 10
  • Utilisation de WinUI 3 dans vos propres applications
  • Outlook sur .NET 7

Une journée de concentré d’expérience .NET

Des experts confirmés en .NET et C# présenteront les nouveautés de la version LTS en ligne pendant une journée et répondront aux préoccupations des participants concernant la nouvelle version et la migration à venir lors des discussions et des séries de questions directes. En plus des sept présentations de 45 minutes, le Dr Holger Schwichtenberg animera une séance de questions et de discussion. Le 25 novembre, les participants pourront approfondir leurs connaissances lors d’un atelier pratique avec lui (l’atelier est complet, mais les personnes intéressées peuvent s’inscrire sur la liste d’attente).

  • Atelier en ligne « Passer de .NET Framework à .NET 6 » (9 h – 16 h)

Les billets pour la conférence sont disponibles au prix de 199 euros (plus 19 % de TVA), et une réduction est prévue pour les groupes, les élèves et les étudiants sur demande. Vous trouverez de plus amples informations dans le programme de la conférence.

Le sérialiseur JSON System.Text.Json offre désormais un ordre de sérialisation définissable pour les propriétés, les références circulaires ignorantes et les événements dans les objets à sérialiser. En outre, il existe une nouvelle interface de programmation System.Text.Json.Nodes au sein de cette bibliothèque pour l’accès en lecture et en écriture à un document JSON dans le style du DOM HTML.

Pour le cryptage, .NET 6 propose en outre l’algorithme symétrique ChaCha20-Poly1305 conformément à la RFC 8439. En tant qu’alternative neutre par rapport à la plate-forme aux compteurs de performance de Windows, .NET 6 propose désormais une mise en œuvre de Open Telemetry. Microsoft propose en avant-première la future norme HTTP/3 basée sur QUIC.

Die rot markierten Teile von .NET 6 sind auf Mitte 2022 vertagt (Abb. 1).

Les parties de .NET 6 marquées en rouge sont reportées à la mi-2022 (Fig. 1).

L’unification finale de .NET Framework, .NET Core et Mono/Xamarin, initialement annoncée pour .NET 5.0, a été reportée une fois de plus. Dès septembre 2021, la direction des produits .NET a clairement indiqué que l’interface utilisateur multiplateforme .NET (.NET MAUI) pour Windows, Android, iOS et macOS ne serait pas prête à temps et a renvoyé la communauté des développeurs à l’année prochaine dans un article de blog (voir figures 1 et 2). Selon la feuille de route, la version finale est désormais prévue pour le deuxième trimestre de 2022.

Die Zusammenführung von .NET Framework, .NET Core und Mono/Xamarin soll nun erst 2022 stattfinden (Abb. 2).

La fusion de .NET Framework, .NET Core et Mono/Xamarin n’est désormais pas prévue avant 2022 (Fig. 2).

Les applications hybrides prises en charge par .NET 6 constituent toutefois un pas en avant vers les interfaces graphiques multiplateformes. Les développeurs peuvent intégrer une application web basée sur Blazor et reposant sur HTML, CSS et C# (éventuellement aussi JavaScript) dans une application de bureau basée sur .NET avec Windows Forms ou Windows Presentation Foundation. Dans un premier temps, il ne fonctionnera que sur Windows, mais avec la sortie de .NET MAUI l’année prochaine, il fonctionnera également sur tous les systèmes d’exploitation pris en charge par MAUI. Malheureusement, cela n’inclut pas le bureau Linux pour l’instant, dont Microsoft semble continuer à négliger l’importance malgré toute la neutralité de la plate-forme pour les serveurs.

L’un des objectifs de Microsoft pour .NET 6 était de faciliter la prise en main de la plate-forme par les nouveaux développeurs. Ce que Microsoft entend par « plus facile » est immédiatement visible lorsque vous créez un nouveau projet .NET 6 : Le code de départ des applications a été considérablement allégé. Vous cherchez en vain une classe et un point d’entrée Main() – le programme démarre à la première commande autonome que le compilateur trouve et a accès à une variable magique « args » qui sort de nulle part. Les espaces de noms standard de .NET peuvent être importés automatiquement.

Tous les développeurs .NET n’apprécient pas ce mélange de minimalisme et de magie. Ceux qui le souhaitent peuvent recréer eux-mêmes l’ancienne structure explicite du programme.

Même sans MAUI, .NET 6 est intéressante pour la communauté des développeurs .NET, car en plus de nombreuses nouvelles fonctions, la version offre également un « support à long terme ». Dans sa philosophie agile, Microsoft parle d’une période de trois ans, pendant laquelle le fabricant fournit aux développeurs des mises à jour régulières dans les domaines de la correction des bugs et de la sécurité. En revanche, Microsoft cessera de prendre en charge son prédécesseur, .NET 5.0, sorti en novembre 2020, en février 2022 (voir figure 3).

Les migrations sont donc à l’ordre du jour pour les prochaines vacances de Noël – heureusement, la liste des changements de rupture de .NET 5.0 à .NET 6 n’est pas aussi longue que les listes comparables de ces dernières années.

Support-Zyklen für .NET für die Jahre 2019 bis 2026 (Abb. 3).

Cycles de support pour .NET pour les années 2019 à 2026 (Fig. 3).

.NET 6, qui se compose de trois moteurs d’exécution et d’un kit de développement logiciel, est également disponible en téléchargement gratuit et sans enregistrement. Ceux qui utilisent Visual Studio comme environnement de développement doivent utiliser la version 2022, qui a été publiée hier.

Avant la version RTM, sept versions préliminaires et deux versions appelées Release Candidates ont été publiées, chacune d’entre elles faisant l’objet d’un rapport détaillé par heise Developer.

Lire aussi

Plus d'articles