Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
.NET Native est une technologie de précompilation permettant de créer et de déployer des applications UWP. .NET Native est inclus dans Visual Studio 2015 et versions ultérieures. Il compile automatiquement la version de publication des applications UWP écrites en code managé (C# ou Visual Basic) en code natif.
En règle générale, les applications .NET sont compilées en langage intermédiaire (IL). Au moment de l’exécution, le compilateur juste à temps (JIT) traduit l'IL en code natif. En revanche, .NET Native compile les applications UWP directement en code natif. Pour les développeurs, cela signifie :
Vos applications présentent les performances du code natif. En règle générale, les performances seront supérieures à celles du code qui est d'abord compilé en IL, puis compilé en code natif par le compilateur JIT.
Vous pouvez continuer à programmer en C# ou Visual Basic.
Vous pouvez continuer à tirer parti des ressources fournies par .NET Framework, notamment sa bibliothèque de classes, la gestion automatique de la mémoire et le garbage collection et la gestion des exceptions.
Pour les utilisateurs de vos applications, .NET Native offre ces avantages :
Temps d’exécution plus rapides pour la majorité des applications et des scénarios.
Temps de démarrage plus rapides pour la majorité des applications et des scénarios.
Coûts de déploiement et de mise à jour faibles.
Utilisation optimisée de la mémoire de l’application.
Toutefois, .NET Native implique plus qu’une compilation vers du code natif. Il transforme la façon dont les applications .NET Framework sont générées et exécutées. En particulier:
Pendant la précompilation, les parties requises du .NET Framework sont liées statiquement à votre application. Cela permet à l’application de s’exécuter avec des bibliothèques locales d’application de .NET Framework, et le compilateur d’effectuer une analyse globale pour offrir des gains de performances. Par conséquent, les applications se lancent de façon cohérente plus rapidement, même après les mises à jour de .NET Framework.
Le runtime .NET Native est optimisé pour la précompilation statique et, dans la grande majorité des cas, offre des performances supérieures. En même temps, il conserve les principales fonctionnalités de réflexion que les développeurs trouvent si productives.
.NET Native utilise le même back-end que le compilateur C++, qui est optimisé pour les scénarios de précompilation statique.
.NET Native est en mesure d’apporter les avantages des performances de C++ aux développeurs de code managé, car il utilise les mêmes outils que C++ sous le capot, comme indiqué dans ce tableau.
Composant | .NET natif | C++ |
---|---|---|
Bibliothèques | .NET Framework + Windows Runtime | Win32 + Windows Runtime |
Compilateur | Optimisation UTC du compilateur | Optimisation UTC du compilateur |
Déployé | Fichiers binaires prêts à l’exécution | Fichiers binaires prêts à l’exécution (ASM) |
Temps d'exécution | MRT.dll (CLR runtime minimal) | CRT.dll (environnement d'exécution C) |
Pour les applications UWP, vous chargez des fichiers binaires de compilation de code natif .NET dans des packages d’application (fichiers .msix ou .appx) dans le Microsoft Store.