.Net 5, vers un environnement .NET unifié

Lors du Build 2019 les équipes Microsoft ont dévoilé beaucoup de nouveautés, parmi lesquelles la prochaine version majeure de dotnet : .NET 5.0.

À compter de la publication de .NET 5 en novembre 2020, ce sera le seul framework .NET à être mis à jour.

Vous vous demandez peut-être pourquoi la version passe de .NET Core 3 à .NET 5, voici l’explication officielle :

Nous omettons la version 4, car elle risque de perturber les utilisateurs familiarisés avec le .NET Framework, qui utilise la série 4.x depuis longtemps. De plus, nous voulions clairement communiquer que .NET 5 était l’avenir de la plate-forme .NET

Microsoft tient par ailleurs à apporter les précisions suivantes :

« Nous en profitons également pour simplifier les noms. Nous pensions que s’il n’y avait qu’un seul .NET à l’avenir, nous n’aurions pas besoin d’un terme de clarification comme «Core». Le nom abrégé est une simplification et indique également que .NET 5 possède des fonctionnalités et des comportements uniformes. N’hésitez pas à continuer à utiliser le nom «.NET Core» si vous le préférez. » 

Concernant le versioning, de nouvelles versions seront publiées tous les mois de novembre les années suivantes.

A noter que les versions à numéro pair, par exemple .NET 6, seront des versions LTS (Long Term Support) bénéficiant d’un support à long terme.

Une version préliminaire de .NET 5 devrait être disponible dans la première moitié de 2020.

blog ai3 dotnet5_platform-1024x546 .Net 5, vers un environnement .NET unifié

Les principaux axes d’amélioration de .NET 5 ont été les suivants :

  • créer un environnement d’exécution et de framework .NET unique, utilisable partout et offrant des comportements d’exécution et des expériences de développement uniformes,
  • développer les fonctionnalités de .NET en exploitant le meilleur de .NET Core, .NET Framework, Xamarin et Mono,
  • construire ce produit à partir d’une base de code unique sur laquelle les développeurs de la communauté Microsoft peuvent travailler et se développer ensemble, ce qui améliore tous les scénarios.

L’ambition est grande puisque cette version permettra :

  • d’avoir un framework unique et un .NET runtime unique,
  • de profiter de .NET Core, Xamarin et Mono pour améliorer et rendre .NET plus moderne,
  • pour la première fois, de cibler les OS Windows, Apple, Linux et Android ainsi que les WebAssembly.

Tout ce que vous appréciez dans .NET Core continuera d’exister:

  • open source et orienté communauté sur GitHub,
  • implémentation multi-plateforme,
  • prise en charge de l’exploitation de fonctionnalités spécifiques à la plateforme, telles que Windows Forms et WPF sous Windows, ainsi que des liaisons natives vers chaque plateforme native de Xamarin,
  • haute performance,
  • installation côte à côte,
  • petits fichiers de projet (style SDK),
  • interface de ligne de commande (CLI),
  • intégration de Visual Studio, Visual Studio pour Mac et Visual Studio Code.

Les principales nouveautés seront les suivantes :

  • vous aurez plus de choix sur les expériences d’exécution,
  • l’interopérabilité Java sera disponible sur toutes les plateformes,
  • l’interopérabilité Objective-C et Swift sera prise en charge sur plusieurs systèmes d’exploitation,
  • CoreFX sera étendu pour prendre en charge la compilation statique de .NET (ahead-of-time – AOT), des empreintes plus petites et un support pour davantage de systèmes d’exploitation.

Microsoft a aussi annoncé que .NET Core continue à exister en parallèle, toujours en open source. Une interopérabilité avec Java est dans les tuyaux, ainsi que pour Objective-C et Swift. Seule l’interopérabilité avec Kotlin manquera à l’appel pour être complet. La couche CoreFX, utilisée par toutes les app .NET 5, sera optimisée et disponible ultérieurement sur plus d’OS.

L’éditeur de Redmond annonce aussi un gros travail sur l’optimisation, la gestion mémoire, l’empreinte mémoire et les compilateurs : il y aura même un compilateur AOT (ahead-of-time) basé sur LLVM (Low Level Virtual Machine). Blazor quant à lui utilise déjà l’outil provenant de Mono.

L’agenda des releases est le suivant :

  • .NET Core 3 : septembre, version non LTS (Long Term Support),
  • .NET Core 3.1 : version LTS vers novembre 2019,
  • .NET 5 : novembre 2020,
  • .NET 6 / 7 / 8 : 2021, 2022 et 2023.
blog ai3 dotnet_schedule-1024x566 .Net 5, vers un environnement .NET unifié

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.