Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

.NET 5.0 Preview 5 est disponible, avec un "petit" ensemble de nouvelles fonctionnalités et d'améliorations des performances,
Dont des changements apportés au compilateur RyuJIT JIT et autres

Le , par Stan Adkens

55PARTAGES

3  0 
Microsoft va de l’avant dans l’édification de la prochaine « grande version de la famille .NET ». La société a annoncé mercredi la cinquième Preview de .NET 5.0 en vue d'une date de sortie générale prévue en novembre, bien que toutes les fonctionnalités prévues pourraient ne pas être finalisées d'ici là en raison de la pandémie covid-19. Le lancement du .NET 5.0 Preview 5 intervient moins d’un mois après la sortie de la précédente Preview.

Dans son annonce, Microsoft a décrit la cinquième version Preview de .NET 5.0 comme comportant « un petit ensemble de nouvelles fonctionnalités et d'améliorations des performances », car la plupart des éléments prévus pour .NET 5 ont été détaillés dans la quatrième version Preview, publiée le mois dernier. « La plupart des fonctionnalités sont maintenant dans le produit, mais beaucoup ne sont pas encore dans leur état final. Nous espérons que la version sera très proche de la version complète d'ici la sortie de la version 7 ».


Lors de la sortie de .NET 5.0 Preview 4, Microsoft a brièvement exposé le chemin parcouru et les choses à venir pour la famille .Net 5 en déclarant :

« .NET 5 est la prochaine version et le futur du .NET. Nous poursuivons l'unification de la plateforme .NET, avec un cadre unique qui s'étend du cloud au bureau, au mobile et au-delà. Avec le recul, nous avons pris le meilleur du .NET Framework et l'avons intégré au .NET Core 3, qui prend en charge WPF et les formulaires Windows. Au fur et à mesure de notre progression, nous ferons évoluer Xamarin et l'assemblage Web .NET pour utiliser les bibliothèques .NET 5, et nous étendrons les outils dotnet pour cibler l'assemblage mobile et Web dans le navigateur. Dans le même temps, nous continuerons à améliorer les capacités de .NET en tant que moteur d'exécution de premier plan pour le cloud et les conteneurs ».

Voici, ci-dessous, quelques-unes des fonctionnalités qui ont été lancées dans la Preview 4 :

  • Prise en charge du C# 9 et du F# 5.
  • Améliorations des performances.
  • Applications à fichier unique : un nouveau type de publication à fichier unique qui exécute une application à partir d'un seul binaire (par exemple, peut être utilisé sur un support en lecture seule).
  • Windows ARM64 : qui permet au .NET de s'exécuter en mode natif sur Windows ARM64, prenant en charge à la fois les scénarios de développement et le déploiement d'applications clientes sur les machines des clients.
  • ARM64 : améliore les performances ARM64 (Linux et Windows) dans les bibliothèques JIT et BCL.
  • Conteneurs : réduit la taille des images des conteneurs et implémente de nouvelles API de conteneurs pour permettre au .NET de rester à jour avec l'évolution du runtime des conteneurs.
  • Nouveau framework cible : adoption d’une nouvelle approche pour les TFM .NET.
  • API JSON : facilite la migration de Newtonsoft.Json vers System.Text.Json.

Le tentaculaire projet .NET 5 comporte tellement de pièces mobiles que Microsoft pense que les fans auront du mal à le suivre son évolution, « à la fois en termes de fonctionnalités spécifiques qui pourraient vous intéresser et de comprendre quelles seront les améliorations plus importantes dans la prochaine version ». Pour cela, lors de la sortie de la Preview 5, l’éditeur de logiciels a annoncé un outil pour y parvenir, le .NET 5.0 Runtime Epics.

Selon Microsoft, il s'agit d'un « ensemble de fonctionnalités qui, ensemble, constituent une amélioration par étapes des fonctions de .NET, et qui nécessitent généralement que le propriétaire de l'"Epic" (un seul développeur ou une petite équipe) entreprenne un voyage pour atteindre les objectifs de cet "Epic". Un tel voyage peut nécessiter de prendre de grands risques personnels ou de combattre des dragons, mais tout cela en vaut la peine pour améliorer le .NET ».
La liste des "Epics" hébergés sur GitHub sera complétée au fur et à mesure de la sortie de la version, les membres de l'équipe qui travaillent sur des "Epics" étant encouragés à éditer cette liste directement pour y ajouter leur "Epics". Les "Epics" sont classés dans les catégories bibliothèques, Runtime, outils, expériences, et autres.


Les nouvelles fonctionnalités et améliorations de performances dans .NET 5.0 Preview 5

Voici, ci-dessous, un tour d’horizon de quelques-unes des "petites" fonctionnalités et améliorations de performances que Microsoft a annoncées mercredi :

Améliorations du compilateur RyuJIT JIT : qui comportent une nouvelle implémentation, beaucoup plus rapide et portable, des assistants tailcall ; la poursuite des progrès de la mise en œuvre du matériel ARM64 ; l’amélioration de la vitesse du JIT dans un cas qui affectait la compilation d'expressions régulières ; l’amélioration des performances de l'architecture Intel grâce à de nouvelles caractéristiques matérielles BSF/BSR et la mise en œuvre de Vector{Size}.AllBitsSet.

Exportations natives (exportations pour les binaires natifs qui font appel au code .NET) : Microsoft a activé cette fonctionnalité maintenant dans .NET 5.0 Preview 5 à la demande des développeurs. La composante de base de cette fonctionnalité est l'hébergement de l'API pour l'attribut UnmanagedCallersOnlyAttribute.

Suppression du support WinRT intégré dans .NET 5.0 (ceci est une annonce anticipée pour la Preview 6) : les avantages de ce changement sont : WinRT interop peut être développé et amélioré séparément du runtime .NET ; la suppression rend WinRT interop symétrique avec les systèmes interop fournis pour d'autres systèmes d'exploitation, comme iOS et Android, d’après l’équipe .Net ; elle peut également tirer parti de nombreuses autres fonctionnalités de .NET (AOT, fonctionnalités C#, liaison IL) et simplifier la base de code du runtime .NET.

Extension du System.DirectoryServices.Protocols à Linux et MacOS : System.DirectoryServices.Protocols est une API de niveau inférieur à System.DirectoryServices, et permet (ou peut être utilisé pour permettre) un plus grand nombre de scénarios. Les deux ensembles d'API permettent de contrôler un serveur de services d'annuaire, comme LDAP ou Active Directory, et d'interagir avec lui. L’équipe .NET a ajouté un support multi-plateforme pour les protocoles System.DirectoryServices.Protocols. Dans la Preview 5, la prise en charge de Linux a été ajoutée et la prise en charge de MacOS sera ajoutée dans la Preview 6. La prise en charge de Windows était préexistante.

Support pour Alpine Linux 3.12 : Microsoft a ajouté, cette semaine, la prise en charge d'Alpine 3.12 (sorti en le 29 mai), de .NET Core 3.1 et de .NET 5. L’équipe continue de travailler sur l'ajout de la prise en charge des nouvelles versions de distribution de Linux.


Bien que la plupart des fonctionnalités soient maintenant dans le produit et qu'il soit toujours en voie de lancement en novembre 2020, le .NET 5 n'aura pas toutes les caractéristiques et fonctionnalités que Microsoft avait initialement prévues, en raison du retard lié à la pandémie covid-19. Ainsi, le package complet apparaîtra avec .NET 6 en novembre 2021.

Il y a quelques semaines, Scott Hunter, directeur de la gestion des programmes, a déclaré dans un communiqué : « Dans le sillage de la pandémie sanitaire mondiale, nous avons dû nous adapter à l'évolution des besoins de nos clients et leur fournir le soutien nécessaire pour les aider à mener à bien leurs activités. Nos efforts continuent d'être axés sur l'aide à nos clients pour répondre à leurs besoins les plus urgents. En conséquence, nous prévoyons que ces fonctionnalités seront disponibles en preview d'ici novembre 2020, mais l'unification sera véritablement achevée avec .NET 6, notre version Long-Term Support (LTS). Notre vision n'a pas changé, mais notre calendrier a changé ».

Source : Microsoft

Et vous ?

Que pensez-vous de la Preview 5 du .Net 5.0 ?
Quels sont les nouveaux changements qui vous intéressent ?
Microsoft travail sur la prise en charge de Linux et MacOS. Quel commentaire en faites-vous ?

Lire aussi

Avec .NET 5, Microsoft voudrait produire un environnement d'exécution .NET unique, et une infrastructure utilisable partout
.NET Core 3.0 est disponible avec le support du développement d'applications Windows Desktop, C# 8.0, ARM64, une prise en charge JSON intégrée rapide et de nombreuses autres améliorations
Bing.com tourne désormais sur .NET Core 2.1, un choix technique qui lui a permis de gagner en performance, mais aussi en agilité
.NET 5 Preview 1 est disponible et apporte des améliorations des performances d'expression régulière, ainsi que des améliorations de la qualité du code dans RyuJIT

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