Fermer

juin 4, 2020

Points clés à retenir pour les développeurs .NET


MS Build de cette année, bien qu'en ligne, était une autre bonne livraison de Microsoft. Nous avons vu des annonces de leurs divers produits comme Teams, Windows, Azure et aussi .NET. Dans cet article, je souligne certaines des principales versions de .NET.

Build est la conférence annuelle des développeurs de Microsoft. L'événement de cette année a été présenté dans une approche légèrement différente. Il s'agit normalement d'un événement en personne qui se tient dans un grand centre avec des milliers de participants, mais l'événement de cette année s'est tenu en ligne en raison du problème de pandémie mondiale. Même s'il était en ligne, il ne manquait pas de nouvelles et de communiqués passionnants. Je m'intéressais à ce qui est à venir pour les développeurs .NET et la communauté au sens large – c'est ce que je partagerai dans cet article et certains autres. Ce message sera axé sur les annonces, que je pense qu'il est important de connaître pour les développeurs .NET.

.NET 5 et au-delà

Il y a quelques mois, Microsoft a parlé de son projet d'unifier les implémentations .NET Core et Mono / Xamarin de .NET. La première étape pour y parvenir est avec .NET 5, et plus tard .NET 6 qui comprendra une union complète de .NET Core et Xamarin. Pour .NET 5, nous prévoyons une amélioration des performances, une réduction de la taille de l'image du conteneur, un nouveau cadre cible et la sortie de C # 9 et F # 5.

.NET 5 aura une taille d'image de conteneur moindre et implémenter de nouvelles API qui permettront à .NET de rester à jour avec l'évolution de l'exécution des conteneurs.

Il existe une nouvelle approche pour spécifier le cadre cible dans .NET 5. Le but est de simplifier la façon dont nous utilisons Target Framework Moniker (TFM) et facilitent l'exposition des API spécifiques au système d'exploitation. En effet, il n'y aura qu'une seule implémentation de .NET et il ne sera pas nécessaire de spécifier la version de .NET Standard que vous prenez en charge. À la place, vous aurez net5.0 ou net6.0 pour spécifier la version de .NET que vous prenez en charge. Vous pourrez utiliser des API de système d'exploitation spécifiques via certaines extensions du cadre en spécifiant quelque chose comme net5.0-windows pour accéder aux API spécifiques à Windows ou net6.0-android pour les API spécifiques à Android. Ainsi, net5.0 est le TFM pour .NET 5 et il prend en charge .NET Framework en mode de compatibilité . Les fonctionnalités spécifiques à Windows, comme Windows Forms et WPF, seront exposées via net5.0-windows .

Xamarin sera intégré dans le cadre de .NET 6, qui utilisera net6.0 comme TFM. .NET 6.0 est l'endroit où la vision complète d'un .NET sera réalisée.

C # 9

C # 9 sera livré avec .NET 5. Il comprend de nombreuses nouvelles fonctionnalités et un meilleur support pour une représentation immuable des données. Il y a une meilleure correspondance des modèles, des propriétés init-only, des enregistrements et bien plus encore. Vous pouvez choisir d'écrire votre programme principal au niveau supérieur au lieu d'avoir à écrire du code passe-partout supplémentaire. L'objectif principal est d'autoriser les programmes C # sans passe-partout inutile autour d'eux, pour le bien des débutants et la clarté du code. Voici un exemple:

 utilisant System;

Console.WriteLine ("Bonjour tout le monde!");

Ce serait la même chose que d'écrire:

 utilisant System;

Programme de cours
{
    vide statique Main ()
    {
        Console.WriteLine ("Bonjour tout le monde!");
    }
}

Il y avait une courte démonstration sur la façon dont vous pouvez également faire cela pour ASP.NET Core, et je pense qu'avec les programmes de niveau supérieur, il faudrait quelques lignes de code pour exécuter un microservice ou une fonction sans serveur. Il y aura plus d'améliorations que celles présentées dans la présentation, mais cela semble très prometteur.

Vous pouvez en savoir plus sur C # 9 et plus d'exemples dans le MS blog .

Windows Forms Designer for .NET Core

Microsoft a annoncé la sortie du concepteur Windows Forms pour .NET Core en tant qu'aperçu dans Visual Studio 16.6. Pour utiliser le concepteur, vous devez l'activer en accédant à Outils > Options > Environnement > Aperçu des fonctionnalités et sélectionnez ] Utilisez l'option Aperçu du concepteur Windows Forms pour les applications .NET Core .

Le nouveau concepteur ne fonctionne que sur Windows 10 pour l'instant. Toutes les fonctionnalités du concepteur et les contrôles Windows Forms sont disponibles, à l'exception des contrôles DataGridView et ToolStripContainer . Il existe également un nouveau contrôle WebView2 et vous pouvez trouver un didacticiel de démarrage dans la documentation Microsoft si vous voulez l'essayer.

Microsoft travaille également avec des tiers

Xamarin, Xamarin.Forms et UI de l'application multiplateforme .NET

L'interface utilisateur de l'application multiplateforme .NET (.NET MAUI) a été introduite au cours de la conférence. C'est un moyen de créer une interface utilisateur native multiplateforme dans un seul projet. Pour créer des applications mobiles multiplateformes, vous devez actuellement avoir un projet distinct pour le système d'exploitation cible et certaines bibliothèques partagées. Avec .NET MAUI, vous avez un projet que vous pouvez créer et déployer sur plusieurs appareils. Il s'agit d'une évolution intéressante vers Xamarin.Forms, et vous pouvez regarder la démo dans cette vidéo (passez à 1:13:00). Le plan est d'en publier un aperçu d'ici la fin de l'année et de le publier dans le cadre de .NET 6.

Blazor

Blazor WebAssembly a été officiellement publié et prêt à être utilisé en production. Cela signifie que vous pouvez exécuter votre code .NET dans le navigateur, via WebAssembly. WebAssembly est conçu pour compléter et fonctionner avec JavaScript, et vous pouvez charger des modules WebAssembly dans une application JavaScript et partager des fonctionnalités entre eux. Cela signifie que votre code C # peut s'exécuter côte à côte avec votre code JavaScript et que vous pouvez désormais créer des applications .NET à pile complète.

La session de génération sur UI Web moderne avec Blazor WebAssembly a montré Blazor WebAssembly fonctionnalités en action. Une chose intéressante que j'aime personnellement, c'est que je peux créer des applications Web progressives avec. Si vous souhaitez en savoir plus sur les fonctionnalités intéressantes de cette version, consultez notre autre publication et assurez-vous de consulter la bibliothèque de composants Telerik pour les applications Blazor . La suite fournit des composants riches que vous pouvez utiliser pour enrichir vos applications et créer des applications Web riches. Il prend en charge la dernière version 3.2.0!

Visual Studio 2019 pour Mac

Visual Studio 2019 pour Mac (version 8.6) est sorti et inclut la prise en charge des fonctionnalités de Blazor WebAssembly, la création de projets gRPC et un terminal intégré. En tant que personne qui utilise VS Code et le terminal intégré sans passer à une autre application ou fenêtre si j'ai besoin d'utiliser le terminal, je trouve que c'est ma fonctionnalité préférée dans cette version. Il inclut la prise en charge de plusieurs instances et des polices configurables, et une belle intégration avec le terminal Mac.

Résumé

L'événement de cette année, bien qu'en ligne, était une autre bonne livraison de Microsoft. Beaucoup d'annonces, mais ici je me suis concentré sur les parties qui, je pense, seront importantes pour la plupart des développeurs .NET. Nous pouvons voir une vision claire vers l'unification de .NET ainsi que des améliorations de langage intéressantes pour C # et F #. Avec l'avancement de WebAssembly avec Blazor, nous pouvons créer des applications Web .NET à pile complète. Certaines de ces fonctionnalités de langage sont publiées dans le cadre de l'aperçu 4 de .NET 5, et vous pouvez les essayer dès aujourd'hui.

Références





Source link