Cet article est destiné à promouvoir une compréhension commune de l’expérience de développement Windows et de l’orientation des produits.
Le paysage de développement d’applications Windows d’aujourd’hui offre un large éventail d’infrastructures et de technologies à choisir. Ce FAQ fournit des conseils sur la façon de décider de l’infrastructure à utiliser pour vos projets de développement d’applications Windows. Il aborde les rubriques suivantes :
- Prise en main et paysage de développement d’applications Windows.
- Développement d’applications Windows uniquement natif avec WinUI, Windows Presentation Foundation (WPF) et Windows Forms (WinForms).
- Kit de développement logiciel Windows (SDK) et SDK d’application Windows.
- Ciblage de Windows dans le cadre de votre stratégie de développement multiplateforme.
- Développement d’applications hybrides et web avec .NET MAUI, Blazor et ASP.NET Core.
- Comment choisir une approche tout en comprenant les investissements de Microsoft.
Paysage de développement d’applications Windows
Où puis-je trouver une vue d’ensemble simple des technologies de développement Windows ?
Pourquoi le développement d’applications clientes est-il toujours essentiel pour la transformation numérique moderne à l’ère des services cloud ?
À l’ère des services cloud, le développement d’applications clientes reste un composant essentiel de la transformation numérique moderne. Pour les développeurs, la création d’applications clientes est essentielle non seulement pour la portée, mais pour fournir des interactions réactives et significatives sur les appareils utilisateur.
Voici pourquoi les applications clientes sont toujours importantes :
- Device Reach : Avec plus de 1,5 milliard d’appareils Windows et plus de 5 milliards d’appareils Android et iOS globalement, les applications clientes vous permettent d’apporter vos applications directement aux utilisateurs sur leurs appareils de choix.
- passerelle vers les services intelligents : applications clientes sont souvent les premiers utilisateurs d’interaction avec vos services. Ils offrent une interface riche et interactive qui vous permet de présenter des fonctionnalités intelligentes et de différencier votre produit des autres.
- scalabilité avec l’intégration cloud : une application cliente bien intégrée peut être synchronisée sans effort avec les services cloud back-end, ce qui permet l’accès aux données en temps réel et une scalabilité transparente à mesure que votre base d’utilisateurs augmente.
- productivité améliorée et la fidélité des utilisateurs : une application conçue de manière réfléchie peut améliorer la productivité et maintenir les utilisateurs engagés avec votre produit ou service au fil du temps.
Développement d’applications Windows uniquement native
Qu’est-ce que le kit SDK d’application Windows ?
Le SDK d’application Windows est une plateforme de développement d’applications Windows qui vous permet de créer de belles applications de bureau modernes et rétrocompatibles (jusqu’à Windows 10 1809). WinUI 3 est l’infrastructure d’interface utilisateur fournie avec le SDK d’application Windows.
Quelle est la différence entre le SDK d’application Windows et le SDK Windows ?
Les deux sont des kits de développement logiciel (SDK) qui vous permettent de créer des applications Windows.
Le SDK d’application Windows est une nouvelle plateforme de développement qui vous permet de créer des applications de bureau modernes compatibles avec toutes les versions de Windows (jusqu’à Windows 10 1809). Quand vous utilisez le SDK d’application Windows pour créer une application, vous avez accès aux fonctionnalités les plus récentes de la plateforme de développement Windows. WinUI 3 est inclus dans le SDK d’application Windows.
Le SDK Windows est une plateforme de développement qui vous permet de créer des applications UWP et des applications Win32/de bureau. Il est conçu autour d’API Windows couplées à des versions particulières du système d’exploitation.
Le SDK d’application Windows ne remplace pas le SDK Windows. Le SDK d’application Windows est un complément du SDK Windows. Il fournit une abstraction pratique, découplée du système d’exploitation, autour du catalogue d’API enrichi du système d’exploitation Windows auquel vous avez déjà accès à l’aide du SDK Windows. Lorsque vous créez des applications avec le SDK d’application Windows, vous pouvez être amené à utiliser certaines API du SDK Windows selon les fonctionnalités dont vous avez besoin. Progressivement, les fonctionnalités du SDK Windows seront transférées vers le SDK d’application Windows.
Je crée une nouvelle équipe pour développer une application Windows uniquement. Pourquoi dois-je choisir de développer avec une infrastructure Windows native comme WinUI, WPF ou WinForms ?
Voici quelques raisons de choisir une infrastructure Windows native pour votre application Windows uniquement :
- performances : frameworks Windows natifs sont optimisés pour tirer parti de la puissance totale du matériel Windows d’aujourd’hui et fournir des expériences utilisateur rapides et réactives.
- intégration : Windows est fourni avec de larges variétés d’API pour créer des expériences sophistiquées uniquement disponibles sur Windows. Les frameworks natifs fournissent une intégration approfondie à ces fonctionnalités et API.
- expérience utilisateur native : frameworks Windows natifs offrent une expérience utilisateur cohérente sur les appareils Windows, ce qui garantit que votre application ressemble à tous les appareils Windows et fonctionne parfaitement sur tous les appareils Windows.
- prise en charge hors connexion : frameworks Windows natifs prennent en charge les scénarios hors connexion, ce qui permet à votre application de fonctionner même quand l’utilisateur n’est pas connecté à Internet.
- monétisation : frameworks Windows natifs sont activement gérés et pris en charge par Microsoft, ce qui vous permet d’accéder aux dernières mises à jour et fonctionnalités.
Quel framework dois-je utiliser pour tirer parti des derniers investissements de Microsoft dans le développement d’applications Windows ?
Si vous créez une nouvelle application Windows uniquement, nous vous recommandons d’utiliser WinUI. WinUI est la dernière infrastructure d’interface utilisateur native pour le développement d’applications Windows et est conçue pour fonctionner sur un large éventail d’appareils Windows. WinUI fournit une infrastructure d’interface utilisateur moderne et flexible qui vous permet de créer des applications Windows visuellement attrayantes et interactives. WinUI fait partie du Kit de développement logiciel (SDK) d’application Windows et est conçu pour fonctionner le mieux avec les dernières versions de Windows.
Puis-je utiliser le Kit de développement logiciel (SDK) d’application Windows / WinUI dans mon application Windows existante ?
Notez que winUI (infrastructure d’interface utilisateur) est fourni avec sdk d’application Windows (infrastructure de développement de plateforme Windows).
En règle générale, vous ne pouvez pas utiliser WinUI, sauf si vous êtes prêt à migrer entièrement votre infrastructure d’interface utilisateur. Nous travaillons sur une fonctionnalité appelée îles XAML qui vous permet d’héberger du contenu WinUI dans d’autres frameworks d’interface utilisateur (WPF, Win32).
Vous devez être en mesure d’utiliser des éléments du Kit de développement logiciel (SDK) d’application Windows dans n’importe quelle application de bureau, en fonction de la façon dont votre application existante a été créée. Les applications UWP ne sont pas prises en charge par le Kit de développement logiciel (SDK) d’application Windows.
Cela signifie que applications WPF/MFC/WinForms peuvent utiliser des API du SDK d’application Windows qui ne sont pas liées à WinUI. Parmi elles, citons par exemple les API de cycle de vie des applications, de fenêtrage et de notifications Toast.
Pour plus d’informations, consultez Utiliser le Kit de développement logiciel (SDK) d’application Windows dans un projet existant.
Dois-je utiliser Visual Studio pour générer des applications WinUI ?
Nous vous recommandons vivement d’utiliser Visual Studio 2022 versions 17.10 et ultérieures pour développer des applications WinUI. L’utilisation de la dernière version de Visual Studio vous donnera accès à des fonctionnalités de développement enrichies telles que la fonctionnalité Rechargement à chaud. Les derniers programmes d’installation de Visual Studio incluent un développement d’applications Windows charge de travail, ce qui facilite la prise en main du développement WinUI.
Vous pouvez peut-être utiliser d’autres IDE et flux de travail de développement, mais Visual Studio est actuellement le seul IDE officiellement pris en charge pour WinUI. Notez que MSBuild est nécessaire pour compiler des projets qui utilisent XAML ou WinUI.
Quand je crée une application à l’aide du Kit de développement logiciel (SDK) d’application Windows et de WinUI 3, est-ce que je crée une « application WinUI » ?
Oui : « Application WinUI » est le terme que nous vous recommandons d’utiliser. Les applications WinUI 3 sont généralement appelées « applications WinUI », car WinUI 2 n’est pas un type d’application, mais un ensemble de composants qui peuvent être utilisés dans les applications UWP.
Puis-je mettre à jour de façon incrémentielle mon application UWP avec des contrôles WinUI 2 vers WinUI 3 en remplaçant progressivement les composants WinUI 2 par des composants WinUI 3 ?
Faux. Le SDK d’application Windows ne peut pas être utilisé dans les applications UWP, et WinUI 2 ne peut pas être combiné à WinUI 3. Consultez Migrer d’UWP vers le SDK d’application Windows.
Quelle est la difficulté de migrer une application UWP vers WinUI ?
La migration des composants de l’interface utilisateur est généralement simple (pour C# et C++/WinRT). Dans le cas contraire, le coût de la migration de UWP vers WinUI dépend principalement de ces facteurs :
- Fichier projet et personnalisation de MSBuild : Si vous utilisez des fonctionnalités avancées de MSBuild, des efforts supplémentaires risquent d’être nécessaires pour migrer votre projet.
- Migration de l’API .NET : si votre application UWP repose sur .NET, vous devez procéder à une mise à niveau vers .NET 6 ou ultérieur. Dans la plupart des cas, l’adoption de .NET 6 est simple.
- Bibliothèques de composants d’interface utilisateur : Si vous utilisez des bibliothèques de composants d’interface utilisateur, vous aurez besoin de nouvelles versions de celles-ci qui ciblent WinUI 3.
- Si votre code source UWP est écrit dans le code C++/CX maintenant remplacé, un portage de code source sera impliqué. Consultez Passer de C++/CX à C++/WinRT.
Pour plus d’informations sur la migration d’UWP, consultez Migration d’UWP vers le SDK d’application Windows.
Si j’ai une application UWP existante dans le Windows Store, puis-je publier une nouvelle application WinUI empaquetée à l’aide des mêmes identificateurs ?
Oui, les applications mises à niveau peuvent être publiées sans avoir à mettre à jour l’identité de votre application. Les utilisateurs disposant de l’ancienne version bénéficieront d’une mise à jour vers la nouvelle version. Ces conseils s’appliquent uniquement aux applications de bureau. Les applications Xbox, HoloLens et Surface Hub ne peuvent pas migrer vers WinUI.
Comment empaqueter/distribuer mon application WinUI ?
Consultez Vue d’ensemble du déploiement.
Où puis-je trouver des conseils sur la migration du SDK d’application Windows ?
Dois-je utiliser le balisage XAML si je souhaite utiliser WinUI ?
Faux. Les contrôles d’interface utilisateur peuvent être créés dans le code. Toutefois, il existe de nombreux avantages pour représenter votre interface utilisateur WinUI sous la forme de balisage XAML déclaratif, comme une expérience de développement améliorée.
Si vous migrez de UWP vers WinUI, vous pourrez probablement réutiliser un grand nombre de votre balisage XAML et du code lié à l’interface utilisateur (mais vous devrez mettre à jour une partie de la syntaxe). Si vous migrez de WPF vers WinUI, vous serez en mesure de réutiliser un grand nombre de concepts, mais le jeu de contrôles et les API seront différents.
Visual Studio dispose-t-il d’une aire de conception/concepteur d’interface utilisateur pour WinUI ?
Pas encore. Nous reconnaissons qu’il s’agit d’un écart dans l’expérience du développeur WinUI. Des outils comme Rechargement à chaud XAML peuvent souvent être utiles. Work a démarré sur un concepteur d’interface utilisateur Visual Studio pour WinUI dans le Kit de développement logiciel (SDK) d’application Windows 1.7, mais il n’existe pas encore de chronologie pour la publication de cette fonctionnalité.
Le SDK d’application Windows inclut-il WinUI 3 ?
Oui. WinUI 3 est fourni dans le kit Windows App SDK.
Le SDK d’application Windows inclut-il WinUI 2 ?
Faux. WinUI 2 fait partie de la plateforme UWP.
WinUI 2 et WinUI 3 sont-ils basés sur la même technologie ?
Pas tout à fait. Bien que WinUI 3 ait été créé à partir de la base de code de WinUI 2, il s’agit de technologies distinctes. WinUI 2 et WinUI 3 sont des infrastructures d’interface utilisateur basées sur XAML qui fonctionnent avec .NET et C++. Notez que les infrastructures WinUI 2 et WinUI 3 ne sont pas compatibles entre elles.
Puis-je utiliser WinUI 3 sans le SDK d’application Windows ?
Faux. WinUI 3 est fourni dans le SDK d’application Windows.
Puis-je utiliser WinUI 3 dans une application non empaquetée ?
Oui. Toutes les technologies du SDK d’application Windows fonctionnent dans les applications non empaquetées, y compris WinUI 3.
Quelle est la différence entre XAML Islands et WinUI 3 ?
La technologie XAML Islands vous permet d’héberger des contrôles WinUI modernes aux côtés de l’interface utilisateur Win32 existante d’autres infrastructures, comme WinForms et WPF. Aujourd’hui, la technologie XAML Islands est prise en charge par la plupart des contrôles système XAML et WinUI 2. Pour plus d’informations, veuillez consulter la section Contrôles XAML WinRT dans les applications de bureau (XAML Islands). La prise en charge de XAML Islands pour les contrôles WinUI 3 est disponible à partir du SDK d’application Windows 1.4.
Si je crée une application WinUI, sera-t-elle moderne sur Windows 11 et Windows 10 ?
Oui, l’interface utilisateur de votre application héritera des derniers principes de conception de l’interface utilisateur Fluent sur toutes les versions prises en charge de Windows 11 et Windows 10 jusqu’à la version 1809 dans les scénarios empaquetés et non empaquetés.
Puis-je utiliser des arrière-plans Mica ou Acrylic dans les applications créées avec le SDK d’application Windows ?
Oui. Voir Appliquer des matériaux de type Mica ou Acrylic dans les applications de bureau pour Windows 11.
Où puis-je trouver des exemples WinUI ?
Consultez l’exemple et les ressources. Voici quelques référentiels notables :
- WindowsAppSDK-Samples : illustre comment utiliser des ensembles d’API spécifiques du SDK d’application Windows.
- démonstrations WinUI 3: contient des démonstrations utilisées pendant les présentations WinUI de Microsoft.
- galerie WinUI: présente le Kit de développement logiciel (SDK) WinUI et l’application Windows. Vous pouvez également obtenir la Galerie WinUI dans le Microsoft Store.
Si j’ai déjà investi dans WPF, dois-je continuer à utiliser WPF ou dois-je envisager de migrer vers WinUI ?
Si vous avez déjà investi dans WPF, vous pouvez continuer à utiliser WPF pour vos applications existantes. WPF est une infrastructure mature et stable largement utilisée par les développeurs pour créer des applications de bureau Windows.
Envisagez d’utiliser l’Assistant Mise à niveau .NET pour migrer vos applications WPF .NET Framework vers la dernière plateforme .NET. L’Assistant Mise à niveau .NET est un outil qui vous aide à migrer vos applications .NET Framework vers les dernières versions prises en charge de .NET. L’Assistant Mise à niveau .NET analyse votre codebase existant et fournit des conseils sur la façon de mettre à jour votre code.
Si je crée une nouvelle application WPF, sera-t-elle obsolète par rapport aux autres nouvelles applications Windows ?
Lors du développement d’une application WPF avec .NET 9 ou version ultérieure, vous pouvez vous assurer que votre application correspond à l’apparence moderne et élégante de Windows 11. Le nouveau thème Fluent pour WPF introduit une esthétique Windows 11 contemporaine pour les applications WPF, complète avec le mode Clair/Sombre intégré et la prise en charge des couleurs d’accentuation système. Cette mise à jour modernise non seulement l’apparence de votre application, mais améliore également l’engagement de l’utilisateur en fournissant une expérience utilisateur polie et cohérente.
Mon équipe est à l’aise dans la création d’applications WinForms, et elle répond à nos besoins. Devrions-nous envisager de migrer vers WinUI ou un autre framework ?
Si votre équipe est à l’aise dans la création d’applications WinForms et windForms répond à vos besoins, vous pouvez continuer à utiliser WinForms pour vos applications existantes. WinForms est une infrastructure mature et stable largement utilisée par les développeurs pour créer des applications de bureau Windows.
L’équipe WinForms investit dans les fonctionnalités et dispose d’une communauté active de contributeurs. Voici quelques-uns des domaines actuels d’investissement :
- Prise en charge asynchrone avec des contrôles courants
- Mode sombre
- Flexibilité de disposition
- Fonctionnalités de sécurité de bureau telles que l’accès au Presse-papiers
Développement natif multiplateforme
Quelles sont les raisons de la création d’applications natives multiplateformes qui ciblent Windows ?
Si vous ciblez des utilisateurs sur plusieurs plateformes de système d’exploitation, la création d’applications multiplateformes avec .NET MAUI ou React Native peut offrir plusieurs avantages :
- Reach : Création d’applications multiplateformes vous permet d’atteindre un plus grand public d’utilisateurs sur différentes plateformes.
- réutilisation du code : la création d’applications multiplateformes vous permet de réutiliser du code sur différentes plateformes, ce qui réduit le temps de développement et les coûts. Il peut être prohibitif de créer des applications distinctes pour Windows, iOS, Android, macOS, etc.
- expérience utilisateur cohérente : Création d’applications multiplateformes vous permet de fournir une expérience utilisateur cohérente sur différentes plateformes, ce qui garantit que votre application semble et fonctionne parfaitement sur tous les appareils.
- Intégration : Création d’applications multiplateformes vous permet d’intégrer différentes plateformes et services, ce qui vous permet de fournir une expérience utilisateur plus complète.
Puis-je être certain que les applications .NET MAUI s’exécuteront correctement sur Windows ?
Lorsque vous générez une application .NET MAUI pour Windows, votre sortie est une application WinUI. Lors du développement, .NET MAUI offre une expérience .NET unique sur toutes les plateformes, y compris Windows, mais sous le capot, elle génère du code spécifique à la plateforme. Cela garantit que votre application .NET MAUI s’exécute correctement sur chaque plateforme et offre une expérience utilisateur native.
Comment .NET MAUI peut-il fournir des API d’appareil natives sur chaque plateforme ?
.NET MAUI offre une expérience .NET unique sur toutes les plateformes, notamment Windows, iOS, Android et macOS. .NET MAUI extrait plus de 60 API spécifiques à la plateforme dans une API multiplateforme unique que vous pouvez utiliser dans votre application .NET MAUI. Ces API couvrent l’accès au stockage, à la mise en réseau, aux capteurs spécifiques à l’appareil, etc. Si nécessaire, vous pouvez également accéder à des API spécifiques à la plateforme supplémentaires à l’aide de l’injection de dépendances pour extraire le code de chaque plateforme.
Puis-je commencer avec WinUI et intégrer ultérieurement .NET MAUI si je souhaite éventuellement cibler des scénarios multiplateformes ?
Pas pour l'instant. Bien que les applications .NET MAUI utilisent WinUI lors de l’exécution sur Windows, nous vous recommandons de commencer par .NET MAUI ou React Native for Desktop si vous prévoyez de cibler plusieurs plateformes.
Notre équipe possède de solides compétences en développement web front-end. Devrions-nous envisager d’utiliser React Native for Desktop ?
Si votre équipe possède de fortes compétences en développement web, vous pouvez envisager d’utiliser React Native for Desktop. React Native for Desktop englobe les frameworks React Native pour Windows et macOS. La devise de React Native est « Learn once, write anywhere », ce qui signifie que vous pouvez utiliser vos compétences de développement web existantes pour créer des applications Windows natives à l’aide de React Native. React Native for Desktop est un projet open source qui vous permet de créer des applications Windows et macOS natives à l’aide de React Native. React Native for Desktop fournit un ensemble d’API qui vous permettent d’accéder aux fonctionnalités et fonctionnalités spécifiques au système d’exploitation de bureau dans vos applications React Native.
Votre équipe peut tirer parti de ses compétences JavaScript, TypeScript et React pour créer la couche d’interface utilisateur, qui est rendue directement dans des primitives natives. Cela fournit des performances d’application natives et un accès aux fonctionnalités de la plateforme native.
En savoir plus sur la prise en main du développement React Native pour Windows dans la documentation React Native for Desktop.
Les autres appareils Windows pris en charge par React Native for Desktop sont-ils pris en charge ?
Les applications React Native peuvent être déployées sur tous les appareils pris en charge par Windows 10 et versions ultérieures, notamment les PC, tablettes, 2-in-1s, Xbox et les appareils de réalité mixte.
Que dois-je utiliser pour créer des applications à exécuter sous Windows et sur Xbox ?
Si votre application doit prendre en charge Xbox, HoloLens ou IoT, nous vous recommandons d’utiliser UWP. Le SDK d’application Windows ne prend pas en charge ces plateformes. Pour le développement de jeux, nous vous recommandons d’utiliser Microsoft Game Development Kit.
Que dois-je utiliser pour créer des applications à exécuter sous Windows et sur Surface Hub ?
Si vous ciblez à la fois Windows et Surface Hub, nous vous recommandons d’utiliser UWP.
Développement hybride et web
Qu’est-ce que les applications hybrides et pourquoi dois-je envisager de en créer une ?
Les applications hybrides combinent le meilleur du développement d’applications web et natives. Le cœur de l’application est créé à l’aide de technologies web telles que HTML, CSS et JavaScript, puis encapsulées dans un conteneur natif qui permet à l’application de tirer parti de certaines fonctionnalités et matériels de plateforme natives. Ils peuvent également être distribués via les magasins d’applications.
L’avantage principal des applications hybrides est qu’elles vous permettent de créer une application unique qui peut s’exécuter sur plusieurs plateformes natives et sur le web, ce qui réduit le temps de développement et les coûts. Voici quelques exemples de plateformes de développement d’applications hybrides qui répondent :
- Electron pour les applications de bureau
- Ionic pour les applications mobiles
- .NET MAUI Blazor hybride pour les applications multiplateformes
Comment créer des applications web progressives au rendu natif sous Windows ?
Qu’est-ce qu’une application hybride .NET MAUI Blazor ?
Avec .NET MAUI, les applications Blazor peuvent également s’exécuter en mode natif sur Windows, iOS, Android et macOS. Cela signifie que vous pouvez créer des applications clientes hybrides qui combinent des composants Blazor et .NET MAUI en une application cliente native unique. Cela fournit un accès complet aux mêmes fonctionnalités de plateforme native disponibles pour toutes les autres applications .NET MAUI.
Pour en savoir plus sur la façon dont Blazor peut être hébergé dans une application .NET MAUI, consultez ASP.NET Core Blazor Hybrid.
Les composants web d’une application hybride .NET MAUI doivent-ils être créés avec Blazor ?
Non, les composants web d’une application hybride .NET MAUI n’ont pas besoin d’être créés avec Blazor. À compter de .NET 9, .NET MAUI fournit un contrôle HybridWebView qui vous permet d’héberger d’autres interfaces utilisateur JavaScript dans votre application native.
Cela signifie que vous pouvez prendre votre application web JavaScript Angular, React, Vue ou autre & HTML et l’héberger dans votre application .NET MAUI. Le contrôle hybride fournit une interopérabilité entre les couches C# et JavaScript afin de pouvoir appeler des fonctions JavaScript à partir de C# et vice versa.
Les autres types d’applications natifs peuvent-ils héberger des composants hybrides Blazor ?
Oui, les applications WPF et WinForms peuvent également héberger des composants hybrides Blazor. Cela vous permet d’ajouter des composants d’interface utilisateur web modernes à vos applications WPF et WinForms existantes. Notez que cela n’est pas possible avec les applications WPF ou WinForms basées sur .NET Framework.
Mon application entière doit-elle être une application hybride, ou puis-je combiner et faire correspondre des composants natifs et hybrides ?
Vous pouvez combiner et mettre en correspondance des composants natifs et hybrides dans votre application. Par exemple, vous pouvez générer le cœur de votre application à l’aide de composants MAUI .NET, puis ajouter des composants hybrides pour fournir des fonctionnalités supplémentaires. Cela vous permet de tirer parti du meilleur des deux mondes : les performances et les fonctionnalités des composants natifs, ainsi que la flexibilité et les économies de coûts des composants hybrides.
Quels sont mes choix pour la construction . Applications web basées sur NET qui s’affichent très bien sur les navigateurs modernes sur Windows ?
Les applications web ont la plus grande portée de n’importe quelle plateforme d’application cliente. Si vous souhaitez créer de belles applications web .NET sur Windows, vous avez plusieurs options :
- applications ASP.NET Core avec Razor Pages
- applications ASP.NET Core MVC
- ASP.NET applications Core Blazor, avec des options de modèle d’hébergement, notamment :
- Applications Blazor WebAssembly
- Applications Blazor Server
Notez que le modèle d’hébergement pour Blazor peut maintenant être configuré au niveau du composant. Vous pouvez donc disposer d’un composant Blazor WebAssembly hébergé dans une application Blazor Server.
En savoir plus sur les options de développement ASP.NET Core dans la documentation ASP.NET Core.
Choisir une approche et comprendre les investissements de Microsoft
Il existe tellement d’options d’infrastructure pour la création d’applications qui ciblent Windows ! Comment puis-je décider ?
Windows est une plateforme ouverte qui prend en charge de nombreuses technologies. Voici quelques critères qui peuvent vous aider à déterminer la plateforme à utiliser :
- Créez-vous Windows-first ou multiplateforme ?
- Avez-vous une expérience avec .NET ? JavaScript ? D’autres langues ?
- Avez-vous besoin d’accéder aux API spécifiques à Windows ?
- Quelles fonctionnalités de l’infrastructure correspondent le mieux aux exigences de votre application ?
- Consultez ce tableau pour d’autres facteurs de décision.
Lorsqu’il s’agit d’applications métier, la plupart des équipes souhaitent choisir en fonction des compétences existantes et de ce que l’équipe est à l’aise à utiliser.
Comment choisir la meilleure approche de développement pour mon application web ?
Voici quelques éléments à prendre en compte lors du choix d’une approche de développement pour votre application web :
- Blazor est recommandé pour la création d’applications web frontales avec .NET. À l’aide de Blazor, vous pouvez maintenant créer l’ensemble de votre front-end et back-end avec .NET, ce qui vous permet d’économiser du temps et de l’argent. Il est particulièrement adapté aux applications métier d’entreprise sur les appareils actuels.
- Les applications web JavaScript sont toujours logiques si vous souhaitez tirer parti des compétences ou des investissements existants de votre équipe dans JavaScript, ou si vous devez intégrer des bibliothèques ou des frameworks JavaScript existants.
- Les applications existantes qui utilisent des infrastructures plus anciennes, telles que Web Forms, MVC ou Razor Pages, sont toujours prises en charge et peuvent continuer à être développées et gérées à l’aide de ces frameworks.
Qui crée des applications avec WinUI aujourd’hui ?
De nombreux clients créent avec WinUI aujourd’hui, notamment Adobe et Apple :
- Adobe Fresco, une application de dessin et de peinture gratuite pour Windows.
- Apple a créé l'Apple Music, Apple TVet applications Apple Devices avec WinUI et le Kit de développement logiciel (SDK) d’application Windows.
Microsoft a également créé plusieurs applications avec WinUI, notamment les applications Windows 11 File Explorer et Photos.
Qui crée des applications .NET MAUI aujourd’hui ?
De nombreux clients utilisent .NET MAUI pour créer leurs applications multiplateformes aujourd’hui, notamment Microsoft. Par exemple, l’application mobile Microsoft Azure a été créée à l’aide de .NET MAUI.
Découvrez qui d’autre crée des applications avec .NET MAUI sur les clients .NET qui présentent site.
Qui crée des applications WPF aujourd’hui ?
La plupart de l’interface utilisateur de Microsoft Visual Studio est générée avec WPF. L’IDE Visual Studio est un excellent exemple d’application WPF complexe et hautes performances.
Qui crée des applications Blazor aujourd’hui ?
Ge Digital FlightPulse système aérien place les données de capteur et l’analytique dans les mains des pilotes pour améliorer la sécurité et l’efficacité. La configuration back-end de tout ce que les pilotes voient est tout fait avec Blazor.
Vous pouvez lire d’autres récits de clients Blazor sur le site .NET.
UWP et WinUI 2
Les applications UWP peuvent-elles être distribuées en dehors du Microsoft Store ?
Oui. Si votre package MSIX est signé, le certificat de signature doit être valide et approuvé sur l’appareil cible.
Puis-je combiner des contrôles d’interface utilisateur XAML UWP avec des contrôles d’interface utilisateur Win32, WPF ou WinForms ?
Oui - XAML Islands vous permet de le faire. Découvrez-en plus sur XAML Islands.
Empaquetage, déploiement et mises à jour
Quelle est la différence entre les applications empaquetées, non empaquetées et empaquetées avec un emplacement externe ?
Pour connaître les définitions d’applications empaquetées, non empaquetées et empaquetées avec un emplacement externe, consultez Vue d’ensemble du déploiement. Cette rubrique décrit également les avantages et les inconvénients de chaque méthode.
Mon application WinUI sera-t-elle automatiquement mise à jour pour les utilisateurs finaux ?
Une application WinUI peut être remise via le Windows Store, un fichier .appinstaller, ou dans votre package MSI ou setup.exe existant. Le Microsoft Store et AppInstaller prennent en charge les mises à jour automatiques pour les utilisateurs finaux qui les ont activées. En revanche, une application MSI/setup.exe doit disposer de son propre programme de mise à jour.
Puis-je utiliser le SDK d’application Windows sans MSBuild ?
D’une manière générale, non. Le Kit de développement logiciel (SDK) WinUI et Windows App nécessitent MSBuild, c’est pourquoi Visual Studio est un prérequis pour le développement avec WinUI et le Kit de développement logiciel (SDK) d’application Windows. Bien qu’il soit techniquement possible de créer des applications du Kit de développement logiciel (SDK) d’application Windows qui n’utilisent pas WinUI à l’aide d’autres chaînes d’outils, cela n’est pas pris en charge.
Performances et optimisation
Que puis-je faire pour que mon application Windows plaise aux utilisateurs finaux ?
Compatibilité
Mes utilisateurs devront-ils mettre à jour Windows pour utiliser mon application WinUI ?
Les utilisateurs qui ont Windows 10, version 1809 et au-delà pourront installer vos applications WinUI sans mettre à jour leur système d’exploitation.
Puis-je cibler Arm64 avec mon application WinUI ?
Oui.
Désapprobations et migrations
UWP / WinUI 2 sont-ils déconseillés ?
Faux. UWP et WinUI 2 sont toujours pris en charge et vont continuer à recevoir des correctifs de bogue, de fiabilité et de sécurité. Toutefois, la plupart des nouvelles fonctionnalités et fonctionnalités, notamment la prise en charge des derniers runtimes .NET, ne seront ajoutées qu’à WinUI 3.
Quand dois-je migrer une application UWP / WinUI 2 vers WinUI 3 ?
Les développeurs UWP ne doivent pas faire pression pour migrer leurs applications vers WinUI 3, s’ils sont satisfaits de UWP et de son ensemble de fonctionnalités. Le meilleur choix pour certaines applications peut être de ne jamais effectuer de migration. Les applications qui souhaitent bénéficier des derniers investissements réalisés par Microsoft dans la plateforme Windows et .NET doivent envisager de migrer vers le SDK d’application Windows. Consultez Migrer d’UWP vers le SDK d’application Windows.
Quand ne dois-je *pas* migrer une application UWP + WinUI 2 vers WinUI 3 ?
Nous vous recommandons de continuer à utiliser UWP si vous créez des applications pour Xbox, Surface Hub ou HoloLens.
WPF est-il déconseillé ?
Faux. WPF est toujours pris en charge et continue également à recevoir des mises à jour de fonctionnalités.
WinForms est-il déconseillé ?
Faux. WinForms est toujours pris en charge et continue également à recevoir des mises à jour de fonctionnalités.
Windows Runtime (WinRT) est-il déconseillé ?
Faux. WinRT fait référence à une interface binaire d’application (ABI) qui vous permet d’interopérer entre plusieurs langages. WinRT est l’évolution de COM. Le SDK d’application Windows fournit la plupart de ses fonctionnalités par le biais des API WinRT.