# 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…

- Auteur: Jérôme Giacomini
- Langue: fr
- URL canonique: [Démystifier .NET Standard](https://jeromegiacomini.net/fr/articles/2017/09/02/demystifier-net-standard)
- Publié le: 2017-09-02
- Dernière modification: 2026-09-05
- Thèmes: .NET, Xamarin, Windows, Mobile

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](https://github.com/dotnet/standard/blob/master/docs/versions/netstandard1.0.md) | [1.1](https://github.com/dotnet/standard/blob/master/docs/versions/netstandard1.1.md) | [1.2](https://github.com/dotnet/standard/blob/master/docs/versions/netstandard1.2.md) | [1.3](https://github.com/dotnet/standard/blob/master/docs/versions/netstandard1.3.md) | [1.4](https://github.com/dotnet/standard/blob/master/docs/versions/netstandard1.4.md) | [1.5](https://github.com/dotnet/standard/blob/master/docs/versions/netstandard1.5.md) | [1.6](https://github.com/dotnet/standard/blob/master/docs/versions/netstandard1.6.md) | [2.0](https://github.com/dotnet/standard/blob/master/docs/versions/netstandard2.0.md) |
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
| .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](https://docs.microsoft.com/en-us/dotnet/standard/net-standard)

[Séries de vidéos permettant de découvrir .Net Standard](https://www.youtube.com/playlist?list=PLRAdsfhKI4OWx321A_pr-7HhRNk7wOLLY)
