# .NET

.NET (prononcé « dot net », anciennement .NET Core) est un cadriciel (framework) libre et open source développé par les employés de Microsoft regroupés dans la .NET Foundation (en). Successeur multiplateforme de .NET Framework, il est compatible avec les systèmes d'exploitation Windows, macOS et Linux.
Le cadriciel .NET comprend CoreCLR, un environnement d'exécution complet de CLR, la machine virtuelle qui gère l'exécution des programmes .NET. CoreCLR est livré avec un compilateur à la volée amélioré, appelé RyuJIT. .NET Core inclut également CoreFX, qui est un fork partiel de FCL (en). Bien que .NET Core partage un sous-ensemble d'API .NET Framework, il est livré avec sa propre API.
En outre, .NET contient CoreRT, le runtime .NET Native, optimisé pour être intégré aux fichiers exécutables natifs compilés avant l'exécution. Une variante de la bibliothèque .NET Core est utilisée pour UWP. L'interface de ligne de commande .NET Core offre un point d'entrée d'exécution pour les systèmes d'exploitation et fournit des services de développement, tels que la compilation et la gestion des packages.

## Histoire

Officieusement, le développement de .NET Framework a commencé en 1999. L'annonce officielle du développement d'une nouvelle technologie a eu lieu lors de la conférence de presse de Microsoft le 13 janvier 2000. La première version de Microsoft .NET Framework a été officiellement publiée le février 2002. Depuis la sortie de la première version de .NET Framework, neuf autres mises à niveau ont eu lieu. La version finale de .NET Framework était la 4.8.
.NET Core est un framework multi-plateforme open source (Windows, Mac, Linux) qui peut être défini comme le successeur de .NET Framework. C'est un analogue moderne du .NET Framework. Microsoft a annoncé le développement de .NET Core le 12 novembre 2014. .NET Core a été officiellement publié le 27 juin 2016. Microsoft a mis à jour .NET Core et a publié ses nouvelles versions jusqu'à la version 3.1. Cependant, en novembre 2020, la dernière version de .NET Core a été livrée sous le nom de .NET 5. « Core » a été supprimé du nom et la version 4.0 a été ignorée pour éviter toute confusion avec .NET Framework.
.NET 8 est la dernière mise à niveau majeure publié en novembre 2023 de la plateforme.
Microsoft a annoncé prévoir une publication annuelle (en novembre) d’une nouvelle version majeure. La sortie de .NET 9 est prévue pour novembre 2024 et .NET 10 pour novembre 2025.
Les versions paires sont des versions "Long Term Support (LTS)" ayant un support de 36 mois tandis que les versions impaires sont des versions "Standard Term Support (STS)" ayant un support de 18 mois.

## Langages de programmation supportés

.NET prend en charge les langages C# et F# et Visual Basic .NET.

## Système d'exploitation et restrictions

La génération d'un exécutable ciblant un système particulier nécessite les librairies spécifiques pour ce système. La disponibilité de ces librairies n'est pas toujours garantie sur l'environnement de développement. De plus, il n'existe pas toujours de simulateur disponible pour l'environnement ciblé. Selon le cas, il sera nécessaire de réaliser la compilation de l'exécutable avec le système d'exploitation cible.
Système d'exploitation requis selon le système d'exploitation cible :
| Système d'exploitation cible | Système d'exploitation requis pour la compilation |
| Windows | Microsoft_Windows |
| Linux | Linux |
| Android | Linux - Microsoft_Windows - macOS |
| macOS | macOS |
| iOS | macOS |