Démystifier .NET Standard

Démystifier .NET Standard

La sortie de .Net Standard 2.0 annonce un grand souffle d’air frais pour les développeurs .Net.

Revenons ensemble sur :

  • Qu’est-ce que .Net standard?
  • Pourquoi ça va nous facilite la vie,  à nous, développeurs .Net ?
  • En quoi c’est différent de PCL?
  • Mais c’est pas pareil que .Net core?
  • Pourquoi .Net Standard 2.0 change la donne ?

Qu’est-ce que .Net Standard?

Le .NET Standard est une spécification formelle des API .NET qui sont destinées à être disponibles sur toutes les implémentations .NET. La motivation derrière le .NET Standard est d’établir une plus grande uniformité dans l’écosystème .NET.

En quoi c’est différent des PCL?

Une PCL est une bibliothèque qui cible un ensemble de plates-formes. Les API accessibles par ces plateformes sont les API communes entres les plateformes.
Or .Net standard c’est l’inverse : on cible juste un “standard” qui est implémenté par nos Frameworks .NET.

Partager du code devient plus simple : plus la peine de choisir le bon profil de PCL, on choisit juste la version du standard supporté par les plateformes ciblées.

Mais c’est pas pareil que .Net core?

.NET Core est une autre version du .Net Framework (comme Xamarin). C’est une version de .Net cross plateforme (Linux, Mac, Windows) et modulaire. .Net Core respecte aussi .Net standard.

En quoi .Net Standard 2.0 change la donne?

Il y avait 13K API partagées en .Net Standard 1.6 avec .Net Standard 2.0 elles passent à 36K.
Microsoft à testé l’ensemble des packages nuget disponibles sur nuget.org et il en résulte que 70% des packages nugets sont compatibles avec .Net Standard 2.0.

Grace à .Net Standard nous allons pouvoir partager notre code .net facilement sur tout les frameworks .net : Xamarin, .Net core, UWP…

Versions supportées de .Net Standard :

.NET Standard 1.0 1.1 1.2 1.3 1.4 1.5 1.6 2.0
.NET Core 1.0 1.0 1.0 1.0 1.0 1.0 1.0 2.0
.NET Framework (with .NET Core 1.x SDK) 4.5 4.5 4.5.1 4.6 4.6.1 4.6.2
.NET Framework (with .NET Core 2.0 SDK) 4.5 4.5 4.5.1 4.6 4.6.1 4.6.1 4.6.1 4.6.1
Mono 4.6 4.6 4.6 4.6 4.6 4.6 4.6 5.4
Xamarin.iOS 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.14
Xamarin.Mac 3.0 3.0 3.0 3.0 3.0 3.0 3.0 3.8
Xamarin.Android 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.5
Universal Windows Platform 10.0 10.0 10.0 10.0 10.0 vNext vNext vNext
Windows 8.0 8.0 8.1
Windows Phone 8.1 8.1 8.1
Windows Phone Silverlight 8.0

Conclusion :

L’écosystème .NET évolue rapidement! Les deux priorités de Microsoft sont : l’open source et cross-platform.
Et .Net Standard est l’une des réponses à ces priorités.

Pour aller plus loin :

.NET Standard – Doc officielle
Séries de vidéos permettant de découvrir .Net Standard

Laisser un commentaire

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

Pin It on Pinterest