.Net Framework Vs .Net Standard Vs .Net Core ! C’est quoi la différence ?

.Net Framework Vs .Net Standard Vs .Net Core ! C’est quoi la différence ?

Introduction

Dans cet article, nous comprendrons la différence entre .Net Core et .Net Framework et en quoi .Net Standard est différent des deux.

.Net Framework et .Net Core sont les deux implémentations différentes de .Net Runtime.

NB : .Net Core est plus récent que .Net Framework.

.Net Framework est un framework permettant de créer et de gérer les applications Windows et Web telle que l’application Asp.Net ou Asp.Net MVC. Il s’agit d’un ancien framework créé par Microsoft et fournit une solution de bout en bout. Cela ne prend pas en charge le déploiement multiplateforme.

.Net Core est un framework open source et cross-platform pour la construction de l’application qui peut fonctionner sur n’importe quelle plate-forme comme Mac, Linux ou Windows. Il est également créé par Microsoft. Ce n’est pas une nouvelle version sur .Net Framework, alors que c’est un framework totalement nouveau qui est écrit à partir de zéro.

Comprendre les termes – .NET Framework, .NET Core

.NET Framework

.Net Framework est une implémentation de .NET qui s’exécute sur la plate-forme Windows. Il vous permet de créer des applications de bureau Windows ainsi que des formulaires Web ASP.NET et des applications ASP.NET MVC. .NET Framework a été publié pour la première fois en 2002 et sa version stable actuelle est 4.7.1 .

.NET CORE

.Net Core est un nouveau framework modulaire multi-plateforme et open source. Il vous permet de créer des applications console et des applications ASP.NET Core. .NET Core est sorti en 2016 et sa dernière version est 3.0.

Comprendre l’architecture de .Net Framework et .Net Core

Avant de comprendre le .Net Standard, commençons par comprendre l’architecture de .Net Framework et .Net Core. 

Nous devons d’abord comprendre à quel problème nous sommes confrontés et que nous devons utiliser .Net Standard. Lorsque vous travaillez avec une application .Net Framework ou .Net Core ou Xamarin, vous avez besoin de la bibliothèque de classes de base (BCL) utilisée pour partager le code entre plusieurs projets ou solutions.

Architecture .NET FRAMEWORK, .NET CORE et XAMARIN

Comme vous constatez l’image ci-dessus nous dit que chacun à son propre BCL (Base Class Library).

Quel est le problème?

Supposons que nous créons une application à l’aide de .Net Framework et que nous utilisons sa bibliothèque pour le code partagé. Après un certain temps, nous avons l’impression de créer une application dans .Net Core et d’essayer de réutiliser la même bibliothèque de code partagée que celle créée dans .Net Framework.

Nous ne pouvons pas utiliser la bibliothèque de classes de base .Net Framework dans .Net Core en raison de problèmes de compatibilité. 

Fondamentalement, les bibliothèques qui ciblent .Net Framework ne peuvent s’exécuter que dans une application basée sur .Net Framework et les bibliothèques qui ciblent .Net Core ne peuvent s’exécuter que dans des applications compatibles .Net Core.

Quelle est la solution ?

La solution est .Net Standard. 

.Net Standard est une spécification qui peut être utilisée dans toutes les implémentations .NET (.NET FRAMEWORK, CORE OU XAMARIN). 

Il est utilisé uniquement pour le développement de projets de bibliothèque. Cela signifie que si nous créons une bibliothèque dans .NET Standard, nous pouvons les utiliser dans .NET Framework et .NET Core. Selon l’image montrée dans l’image ci-dessous, les bibliothèques .Net Standard sont partagées

Par conséquent, si vous souhaitez créer une application et conserver votre code partagé dans la bibliothèque de classes de base, vous devez choisir .Net Standard, car il est également portable avec .Net Framework, .Net Core et Xamarin.

Comment fonctionne .Net Standard ?

Chaque version .Net Standard contient un ensemble d’API telles que System.Data, System.Collections, System.Runtime, etc. Si une nouvelle version de .Net Standard est introduite, elle contient l’ensemble des API de la version précédente ainsi que certaines des nouvelles Apis. Cela signifie donc qu’une version plus récente de .Net Standard contient tout l’ensemble des API du début à la fin, ce qui signifie qu’une version plus élevée de .Net Standard signifie une plus grande disponibilité des API.

Trouvez le tableau ci-dessous pour identifier la version .Net Standard correcte à utiliser pour votre projet de bibliothèque de classes partagée. 

Pour plus de détails, visitez le lien – https://docs.microsoft.com/en-us/dotnet/standard/net-standard

Les versions .NET Standard

Conclusion

Nous avons compris la différence réelle entre .Net Framework, .Net Core et .Net Standard et en quoi sont différents.

J’espère que cet article vous aidera. Vos commentaires et critiques constructives sont toujours appréciés, vous pouvez également lire notre dernier article concernant Les méthodes génériques en C# .

Partagez !

Laisser un commentaire

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