Le cycle de vie d’une application .NET :
- Le code source C# est compile en un fichier assembly qui represente l’application que vous avez developpee. Son contenu est du MIL (multi plateforme intermediate language), une forme du langage assembleur. On a besoin d’installer sur la machine cible un .NET CLR (common language runtime).
- Pour executer une application .NET, on a donc besoin de l’assembly (le programme) et du .NET CLR.
- Dans une application micro service distribuee sur des conteneurs, le .NET CLR represente 90% de la taille du conteneur tandis que l’assembly ne represente qu’une firme partie.
Depuis la version .NET 7, dotnet permet de creer des assembly Native AOT (ahead of time) qui permet de distribuer une application .NET sans le .NET CLR en compilant le code source specifiquement pour la plate-forme sur laquelle on veut executer le code en incluant seulement les parties .NET pour lesquelles l’application a besoin. Il n’est donc plus necessaire de deployer le CLR et l’occupation de l’espace est ainsi reduite.
Versions STS et LTS
- STS (short time support) : support court de 18 mois (.NET 5, 7 a tous les 2 ans)
- LTS (log time support) : support sur 3 ans (.NET 6, 8 a tous les 2 ans)