Ajouter un commentaire

.NET Core ou .NET Framework ?

Par:
ftonic

mer, 19/12/2018 - 10:46

Avant, le choix était simple : le framework .Net. Aujourd’hui, .Net se décline en plusieurs versions. Finalement, quel .NET utiliser pour vos développement ?

1 NET Framework

C’est la version historique de .NET apparu il y a 17 ans ! Il était fermé et lié au monde Windows. Puis peu à peu, des librairies et du code ont été ouverts ce qui a permis de créer Mono puis de supporter de nouveaux systèmes. Le framework est la version la plus complète de .Net et intègre toutes les librairies. Si vous développez avec .NET pas de raison de migrer sauf si vos apps changent de vision et de cibles d’exécution. Si certains modules ne sont pas disponibles dans .Net Core, restez en .NET Framework.

2 .NET Core

.NET Core est une version allégée et surtout portable (sous-entendu : multi-plate-forme) de .NET. Vous pouvez ainsi créer des apps .NET fonctionnant sur macOS ou Linux par exemple. Il est adapté aux architectures de type micro-services. D’autre part, la plateforme est open source. La v3 supporte WPF, Windows Forms, UWP. Ce qui est un sacré progrès par rapport aux versions précédentes. Cette version est plus compacte que le framework. 

Un des avantages de .NET Core est la possibilité d’avoir plusieurs versions sur une même machine. Ce qui n’est pas possible avec le framework qui n’autorise qu’une seule version installée. 

Selon Microsoft, l’usage de .NET Core peut se définir ainsi :

  • vous avez des besoins multiplateformes ;
  • vous ciblez des microservices ;
  • vous utilisez des conteneurs Docker ;
  • Vous avez besoin de systèmes scalables et hautes performances.
  • Vous avez besoin de versions .NET côte à côte par application.

(3) .NET Standard n’est pas à proprement parlé une édition de .NET. Il s’agit de la spécification des API .NET qui doivent être disponibles sur l’ensemble des .NET disponibles. Le but est d’offrir un cadre homogène et unique d’API, ce qui n’était pas totalement le cas avant. 

Microsoft présente ainsi .NET Standard :

  • Définit un ensemble uniforme d’API de bibliothèque de classes de base pour toutes les implémentations de .NET à implémenter, indépendamment de la charge de travail.
  • Permet aux développeurs de générer des bibliothèques portables utilisables sur toutes les implémentations de .NET, à l’aide de ce même ensemble d’API.
  • Réduit ou même élimine une compilation conditionnelle de source partagée résultant des API .NET, uniquement pour les API de système d’exploitation.

Filtered HTML

Plain text

CAPTCHA
Cette question permet de vérifier que vous n'êtes pas un robot spammeur :-)
     J  N   N  K  K  V     V  X   X 
J NN N K K V V X X
J N N N KK V V X
J J N NN K K V V X X
JJJ N N K K V X X