Dans une mise à jour publiée cette semaine et disponible sur GitHub, .NET Toolkit Community de Microsoft se focalise sur la partie MVVM de la boîte à outils. Acronyme de Model-View-ViewModel, il s’agit d’un modèle de conception architecturale d’interface utilisateur permettant de découpler cette interface et le code qui ne lui est pas associé. L’éditeur a améliore les fonctionnalités, les performances et les diagnostics de MVVM.
Dans le détail, la version 8.1 du service communautaire ajoute des analyseurs dédiés. Auparavant, les services MVVM émettaient des diagnostics pour les fonctionnalités utilisées de manière incorrecte. Désormais, il peut proposer des recommandations pour améliorer le code. Un autre analyseur a également été ajouté pour aider à réduire la taille des binaires dans les applications.
Des performances optimisées
En parallèle, la boîte à outils propose des optimisations de performances pour améliorer l’expérience utilisateur des développeurs. En particulier quand ils travaillent sur des solutions volumineuses. L’architecture des générateurs a été améliorée avec des capacités telles que le multi-ciblage pour la plateforme du compilateur Roslyn 4.3. De même, les diagnostics ont été déplacés vers les analyseurs de diagnostic afin de réduire les dépassements du typage. Les fournisseurs incrémentiels ont également été mis à jour pour ne plus propager les symboles, réduisant ainsi l'utilisation de la mémoire. Les modèles et pipelines incrémentiels ont été révisés dans le même sens.
Le kit d'outils MVVM mis à jour pousse de nouvelles extensions IObservable pour l'interface IMessenger qui comblent les fonctionnalités exposées par les API de messagerie. .NET Community Toolkit 8.1 abonde la surveillance du framework cible .NET 7 au paquet de haute performance et inclut des changements pour bénéficier des champs ref de C# 11. La dernière édition retire certains types de l'aperçu, notamment Ref, ReadOnlyRef, NullableRef et ReadOnlyNullableRef. De nouvelles règles de sécurité pour les ref sont en place pour ces types.