Lancement de la plateforme open source .NET 6

La société Microsoft a présenté une nouvelle version significative de la plateforme open source .NET 6, créée grâce à l'unification des produits .NET Framework, .NET Core et Mono. Avec .NET 6, il est possible de créer des applications multiplateformes pour les navigateurs, les systèmes cloud, les bureaux, les dispositifs IoT et les plateformes mobiles, en utilisant des bibliothèques unifiées et un processus de compilation commun, indépendamment du type d'application. Les compilations .NET SDK 6, .NET Runtime 6 et ASP.NET Core Runtime 6 sont disponibles pour Linux, macOS et Windows. .NET Desktop Runtime 6 est uniquement disponible pour Windows. Les projets associés sont distribués sous licence MIT.

.NET 6 comprend le runtime CoreCLR avec le compilateur JIT RyuJIT, des bibliothèques standard, des bibliothèques CoreFX, WPF, Windows Forms, WinUI, Entity Framework, l'interface en ligne de commande dotnet, ainsi que des outils pour le développement de microservices, de bibliothèques, d'applications serveur, graphiques et console. Le framework pour le développement d'applications web ASP.NET Core 6.0 et la couche ORM Entity Framework Core 6.0 (drivers, y compris pour SQLite et PostgreSQL) ont été publiés séparément, ainsi que les versions des langages C# 10 et F# 6. La prise en charge de .NET 6.0 et C# 10 est incluse dans l'éditeur de code gratuit Visual Studio Code.

Fonctionnalités de la nouvelle version :

  • Les performances ont été considérablement améliorées, notamment grâce à l'optimisation des entrées/sorties de fichiers.
  • Le langage C# 10 a introduit le support de structures sous forme d'enregistrements (record struct), des directives « global using », des espaces de noms liés aux fichiers et de nouvelles possibilités pour les expressions lambda. Le compilateur a ajouté le support de la génération incrémentale de code source.
  • Le langage F# 6 a introduit le support du mécanisme d'exécution asynchrone des tâches et du débogage par canal.
  • La fonction Hot Reload est désormais disponible, offrant des outils pour modifier le code à la volée pendant l'exécution du programme, permettant d'apporter des modifications sans arrêter manuellement l'exécution et sans attacher de points d'arrêt. Le développeur peut exécuter l'application sous 'dotnet watch', après quoi les modifications apportées au code sont automatiquement appliquées à l'application en cours d'exécution, permettant d'observer immédiatement le résultat.
  • Un utilitaire 'dotnet monitor' a été ajouté pour accéder aux informations de diagnostic du processus dotnet.
  • Un nouveau système d'optimisation dynamique basé sur les résultats du profilage de code (PGO - Profile-guided optimization) a été proposé, permettant de générer un code plus optimisé sur la base de l'analyse des caractéristiques d'exécution. L'utilisation de PGO a permis d'augmenter la performance du benchmark TechEmpower JSON « MVC » de 26 %.
  • Dans ASP.NET Core, HttpClient et gRPC, le support du protocole HTTP/3 a été ajouté.
  • L'API liée au format JSON a été étendue. Un nouveau générateur de code System.Text.Json et un système de sérialisation de données au format JSON ont été ajoutés.
  • Dans Blazor, la plateforme de création d'applications web en C#, le support du rendu de composants Razor à partir de JavaScript et l'intégration avec des applications JavaScript existantes ont été ajoutés.
  • Le support de la compilation de code .NET en un format pouvant être exécuté sur WebAssembly a été ajouté.
  • L'API File IO a été mise à jour pour prendre en charge les liens symboliques. FileStream a été entièrement réécrit.
  • Le support de la bibliothèque OpenSSL 3 et des algorithmes cryptographiques ChaCha20/Poly1305 a été ajouté.
  • Dans le Runtime, des mécanismes de protection W^X (Write XOR Execute, interdisant l'accès simultané en écriture et en exécution) et CET (Control-flow Enforcement Technology, protégeant contre l'exécution d'exploits construits à l'aide de techniques orientées retour de code) ont été mis en œuvre.
  • Un support expérimental pour iOS et Android en tant que plateformes TFM (Target Framework Moniker) a été ajouté.
  • Le support des systèmes Arm64 a été considérablement amélioré. Le support des appareils Apple basés sur la puce ARM M1 (Apple Silicon) a été ajouté.
  • Le processus de construction du .NET SDK à partir des sources a été assuré, facilitant la création de paquets .NET pour les distributions Linux.
Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster