1 points par GN⁺ 2023-11-15 | 5 commentaires | Partager sur WhatsApp
  • .NET 8 apporte non seulement des améliorations en matière de performances, de stabilité et de sécurité, mais aussi des améliorations de la plateforme et des outils qui renforcent la productivité des développeurs et accélèrent l’innovation
  • Il redéfinit la manière de créer des applications cloud natives et des services à très fort trafic, et facilite la création d’applications qu’elles soient déployées sur Linux ou Windows, ou qu’elles utilisent des conteneurs
  • .NET 8 aide à relever des défis fondamentaux comme l’observabilité, la résilience, la scalabilité et la facilité d’administration, notamment grâce à un ensemble éprouvé de bibliothèques utilisées dans les services à grande échelle de Microsoft

Les excellentes performances de .NET 8

  • .NET 8 inclut des milliers d’améliorations de performance sur l’ensemble de la stack, et le nouveau générateur de code activé par défaut, Dynamic PGO, peut améliorer les performances des applications jusqu’à 20 %.
  • La prise en charge du jeu d’instructions AVX-512 permet d’effectuer des opérations parallèles sur des données vectorielles 512 bits, afin de traiter plus de données plus rapidement.
  • Les types de base implémentent de nouvelles interfaces de formatage et d’analyse qui permettent de formater et d’analyser directement en UTF-8, sans surcharge liée aux conversions.

.NET Aspire

  • .NET Aspire est une stack destinée à créer, avec .NET, des applications cloud natives résilientes, observables et configurables, avec télémétrie, résilience, configuration et contrôles d’état inclus par défaut.
  • Elle facilite la découverte, l’acquisition et la configuration des dépendances essentielles aux applications cloud natives, et la première preview de .NET Aspire est disponible dès aujourd’hui.

Améliorations des conteneurs dans .NET 8

  • .NET permet de packager des conteneurs plus facilement et de manière plus sûre, et toutes les images .NET incluent un utilisateur non root, ce qui permet d’obtenir des conteneurs plus sécurisés avec une configuration en une ligne.
  • Les outils du SDK .NET publient des images de conteneur sans Dockerfile, en mode non root par défaut.
  • Des images de base .NET plus petites permettent de déployer plus rapidement des applications conteneurisées, et la nouvelle variante d’image Chiseled Ubuntu offre une option de sécurité renforcée.

Native AoT

  • Les applications .NET peuvent être compilées en code natif afin de réduire l’utilisation mémoire et de démarrer instantanément.
  • Le compilateur JIT n’a plus besoin de compiler le code à l’exécution, et il n’est plus nécessaire de déployer le compilateur JIT ni le code IL.
  • Les applications AOT ne déploient que le code nécessaire à l’application, ce qui leur permet de fonctionner même dans des environnements contraints.

Intelligence artificielle

  • .NET 8 apporte des capacités IA de premier plan dans le SDK .NET pour faciliter l’usage de l’IA et prend en charge une intégration fluide avec divers outils.
  • Plusieurs améliorations ont été apportées à la bibliothèque System.Numerics afin d’améliorer la compatibilité avec les workloads de Generative AI, tandis que l’essor des applications enrichies par l’IA fait émerger de nouveaux outils et SDK.
  • En collaboration avec de nombreux partenaires internes et externes, Microsoft aide les développeurs .NET à accéder facilement à divers modèles, services et plateformes d’IA.

Blazor

  • Dans .NET 8, Blazor peut utiliser ensemble le serveur et le client pour répondre à tous les besoins d’interface web.
  • Grâce à plusieurs nouvelles améliorations qui optimisent le temps de chargement des pages, la scalabilité et l’expérience utilisateur, les développeurs peuvent utiliser Blazor Server et Blazor WebAssembly dans une même application.

.NET MAUI

  • .NET MAUI fournit un système de projet unique et une base de code unique pour créer des applications WinUI, Mac Catalyst, iOS et Android.
  • Une nouvelle extension Visual Studio Code fournit les outils nécessaires au développement d’applications mobiles et desktop .NET, avec prise en charge de Xcode 15 et d’Android API 34 pour cibler les dernières versions d’iOS et d’Android.

Fonctionnalités de C# 12

  • C# 12 rend l’expérience de développement plus productive et plus agréable, et permet de créer des constructeurs primaires pour les classes et les structures avec une syntaxe simple et élégante.
  • Les tableaux, spans et autres types de collections peuvent être créés facilement grâce à une syntaxe concise et expressive.

L’avis de GN⁺

L’essentiel de cet article réside dans la variété des nouvelles fonctionnalités et améliorations que .NET 8 met à disposition des développeurs. Les gains de performances, la simplification du développement d’applications cloud natives, le renforcement de l’intégration de l’IA, ainsi que les avancées de Blazor et de .NET MAUI devraient aider les développeurs à créer des logiciels plus efficaces et plus innovants. Pour les développeurs qui travaillent à la pointe de la technologie, ces nouveautés constituent une mise à jour attrayante et stimulante, ouvrant de nouvelles possibilités à appliquer à leurs projets actuels et futurs.

5 commentaires

 
cosine20 2023-11-21

« Un développeur full-stack .NET exprime sa déception face au marché de l'emploi, où les postes liés à .NET sont rares et, lorsqu'ils existent, exigent souvent un niveau de “rockstar”. »
On dirait que ce n’est pas très différent à l’étranger non plus... J’aime plutôt bien .NET et C#, mais même si je veux faire carrière dans ce domaine, il y a soit très peu de postes, soit des exigences beaucoup trop élevées. T_T

 
leetleet 2023-11-17

Personnellement, j’aimerais utiliser .NET, car je pense qu’il peut allier à la fois productivité et performances...
Mais sur le marché coréen, c’est un peu dommage de l’utiliser à cause des difficultés de recrutement, snif snif

 
kuroneko 2023-11-17

Oh… à voir, Native AoT a énormément élargi le nombre de plateformes prises en charge par rapport à .NET 7.
On dirait même qu’il compile carrément en code natif, ce n’est vraiment plus le .NET que je connaissais. +_+

Mais on en est déjà à la version 8… ? J’ai l’impression que le changement de nom en .NET date d’hier…

 
cosine20 2023-11-21

Les versions de .NET montent vraiment assez vite. Le défaut, c’est que la durée de support est aussi plutôt courte T_T. Même la LTS dure à peine 3 ans.

 
GN⁺ 2023-11-15
Avis Hacker News
  • Expérience impressionnante avec .NET

    Un utilisateur a été très impressionné par .NET en travaillant sur un ancien format vidéo propriétaire. Ce format contenait du GPS, de la vidéo, de l’audio, etc., et les fichiers étaient si volumineux qu’ils étaient difficiles à comprendre. L’utilisateur a retrouvé l’ancienne application de lecture propriétaire, l’a décompilée en C#, puis a supprimé la partie lecteur pour ne garder que le code permettant d’extraire le MP4 et les autres éléments. Après avoir compilé ce code en application console sous .NET 4, il a réussi à le mettre à niveau pour pouvoir le compiler et l’exécuter sous Linux. Malgré la complexité du travail d’analyse de milliers de lignes de code, le processus a été très simple, et il a pu faire tourner sous Linux, en une journée, du code vieux de plus de 10 ans.

  • Évolution de .NET et changements au sein d’une organisation

    .NET a été sous-estimé à cause de son image initiale, mais il est récemment devenu un environnement très agréable à utiliser. Grâce aux améliorations des outils et de l’ergonomie, une organisation qui avait remplacé .NET Core 3.1 par Go est récemment revenue à .NET 6.

  • Fonctionnalité DynamicPGO de .NET 8

    .NET 8 active DynamicPGO par défaut, avec des améliorations par rapport aux versions précédentes 6 et 7. Cette fonctionnalité aide beaucoup les bases de code très abstraites grâce à la dévirtualisation gardée des appels d’interface/virtuels, à l’inlining des délégués et au réordonnancement des branches.

  • Question sur la relation entre .NET et Mono

    Un utilisateur demande des explications sur la relation entre .NET et Mono. Il se demande si Mono est devenu complètement obsolète ou s’il a été intégré à .NET. Il exprime aussi sa confusion concernant l’appellation .NET et le fait de savoir si les assemblies sont du code natif ou du bytecode.

  • Problèmes de l’UI cross-platform de .NET

    Un utilisateur regrette que l’UI cross-platform de .NET soit confuse, en particulier parce que l’implémentation MVC n’est pas claire. Il aimerait disposer d’un GUI desktop simple et intuitif.

  • Déception face au marché de l’emploi pour les développeurs .NET

    Un développeur full-stack .NET se dit déçu par le marché du recrutement, où les postes liés à .NET sont rares et, quand ils existent, exigent souvent un niveau de « rockstar ».

  • Évolution de Blazor et attentes

    Blazor paraît séduisant avec le streaming et le rendu côté serveur, ainsi que l’interactivité au niveau des composants. L’utilisateur pense que ce sera encore meilleur lorsque .NET sera intégré à la fonctionnalité WasmGC.

  • Demande d’avis sur les avantages de l’écosystème .NET

    Un utilisateur aimerait entendre des fans de .NET les raisons qui pourraient convaincre d’utiliser .NET plutôt qu’un autre écosystème.

  • Lien vers la vidéo .NET Conf - Day 1

    Un lien vidéo vers la première journée de la .NET Conf est fourni.

  • Avis sur les nouvelles fonctionnalités de C# 12 et l’annonce d’"Aspire"

    Un utilisateur juge intéressantes les nouvelles améliorations de qualité de vie de C# 12 (littéraux de collection, constructeurs primaires) ainsi que l’annonce d’"Aspire", tout en disant ne pas encore savoir s’il s’agit d’une bonne évolution ou d’un excès de « magie »."}