Partager via


Développement d’applications Windows - Meilleures pratiques

Les meilleures pratiques de cet article vous aident à créer de grandes applications Windows qui atteignent et ravissent environ 1,5 milliard d’utilisateurs de PC différents dans le monde entier. Cet article est divisé en sections suivantes :

  1. Expérience utilisateur : Les conseils de cette section vous aident à améliorer l’apparence et la facilité d’utilisation de vos applications.
  2. Performances et notions de base : les conseils de cette section vous aident à améliorer les performances et l’utilisation des ressources de votre application.
  3. Optimisation du système d’exploitation/ du matériel : les conseils de cette section vous aident à optimiser votre empaquetage et votre distribution pour diverses configurations matérielles.
  4. Découverte et gestion des applications : les conseils fournis dans cette section facilitent la découverte, l’installation, la mise à jour et la désinstallation de votre application.
  5. Accessibilité : Les conseils de cette section vous aident à créer des expériences accessibles et inclusives.
  6. Sécurité et confidentialité : Les conseils de cette section vous aident à atténuer les risques de sécurité et à répondre aux besoins de confidentialité de vos utilisateurs.

Expérience utilisateur

Windows 11 offre une évolution visuelle du système d’exploitation Windows qui améliore l’apparence et l’utilisation de Windows. Les études montrent que les utilisateurs ont des attentes élevées pour les applications Windows :

  • Ils attendent des applications Windows qu'elles fonctionnent avec une gamme complète d'entrées.
  • Ils attendent des modèles de conception et d'interaction à l’apparence native sur les appareils actuels et futurs.
  • Ils attendent une prise en charge des workflows de fenêtrage modernes et des points d’intégration d’interpréteur de commandes.

Lorsque les applications adhèrent aux styles Windows et aux comportements Windows standard, les utilisateurs n’ont pas besoin de réécrire les modèles d’interaction. Cette cohérence facilite considérablement l’utilisation de votre application par les utilisateurs. Une application qui semble géniale peut créer une excellente première impression, mais une application qui est également facile à utiliser et aide l’utilisateur à atteindre ses objectifs crée une impression durable.

Windows 11 repose sur les principes de conception Windows 11. Le suivi de ces instructions lorsque vous créez vos applications vous aide à répondre aux attentes de vos clients en matière d’expérience d’application exceptionnelle. Lorsque vous envisagez d’incorporer les modèles d’interface utilisateur/d’expérience utilisateur des applications Windows les plus récents et recommandés dans vos applications Windows, concentrez-vous sur ces cinq domaines :

  • Mise en page
  • Interaction avec l’interface utilisateur
  • Style de visuel
  • Comportement de la fenêtre
  • Points d’intégration shell

WinUI offre une prise en charge intégrée pour la plupart de ces expériences et styles par le biais de ses contrôles communs. Si vous ne pouvez pas utiliser WinUI, envisagez de simuler les styles présentés dans nos boîtes à outils de conception et la galerie WinUI 3.

Mise en page

Les applications Windows s’exécutent sur diverses configurations qui correspondent aux besoins des utilisateurs. Testez les volets et les pages de votre application sur différentes dimensions, appareils, tailles de fenêtre, paramètres DPI et paramètres de mise à l’échelle. Votre application devrait fonctionner comme prévu même lorsqu’elle est redimensionnée à de petites dimensions.

Sensibilisation au DPI

Les applications WinUI sont automatiquement mises à l’échelle pour chaque affichage sur lequel elles s’exécutent. D'autres technologies de programmation Windows (Win32, WinForms, WPF, etc.) ne gèrent pas automatiquement la mise à l'échelle des DPI pour chaque moniteur. Sans travail supplémentaire pour prendre en charge le redimensionnement DPI par moniteur pour ces technologies, les applications peuvent apparaître floues ou mal dimensionnées. Pour plus d’informations, consultez Développement d’applications de bureau haute résolution sur Windows.

Mise en page réactive

Utilisez des techniques de conception réactives afin d’optimiser vos pages d’application pour différentes tailles de fenêtre. Suivez les directives pour le panoramique ou le défilement afin de vous assurer que les utilisateurs peuvent toujours accéder à votre contenu, peu importe la réduction de la taille de la fenêtre d'application.

Interaction avec l’interface utilisateur

Les utilisateurs Windows peuvent choisir parmi un large éventail d’appareils d’entrée pour interagir avec votre application. En outre, Windows dispose d’expériences système spécifiques que les utilisateurs sont habitués à utiliser. Lorsque votre application adhère à ces expériences, vos utilisateurs peuvent utiliser votre application de manière fiable. Lorsque votre application ne suit pas ces conventions, les utilisateurs peuvent trouver cela déroutant ou frustrant.

Commandes sur l’objet

Utilisez les commandes sur l’objet, telles que les des menus contextuels, les commandes de balayage et les raccourcis clavier. Windows 11 améliore le comportement du menu contextuel de clic droit. Par conséquent, si votre application crée des menus contextuels, reportez-vous aux dernières directives d’intégration des menus contextuels. Les contrôles de texte WinUI exposent automatiquement les commandes couper, copier et coller, mais d’autres contrôles peuvent nécessiter un travail supplémentaire pour prendre en charge ces commandes.

Interaction de texte

Chaque fois qu’il y a du texte dans une application, les utilisateurs s’attendent à ce qu’ils puissent le sélectionner et le copier. Si le texte est modifiable, ils s’attendent également à pouvoir le couper et le coller. En fournissant des raccourcis cohérents aux utilisateurs, vous leur permettez d’effectuer leurs tâches de manière plus efficace. Assurez-vous que les utilisateurs peuvent effectuer ces actions à l’aide du clavier, de la souris, du pavé tactile, de l’écran tactile et du stylet.

Mouvement panoramique et défilement

Il est rare que l’interface utilisateur d’une application s’adapte entièrement à une seule page qui n’a pas besoin de faire défiler. Même s’il n’y a que quelques éléments d’interface utilisateur, les utilisateurs peuvent librement redimensionner la fenêtre de l’application et provoquer la masquée de certains éléments d’interface utilisateur. Assurez-vous que l'interface utilisateur de votre application prend correctement en charge le défilement et le panoramique (à l'aide du clavier, de la souris, du pavé tactile, du toucher et du stylet) pour permettre aux utilisateurs d'accéder à tous les éléments d'interface utilisateur susceptibles de se déplacer hors de la zone visible de la fenêtre.

Style de visuel

Windows 11 repose sur les principes de conception Windows 11 : sans effort, calme, personnel, familier et complet + cohérent. Les expériences qui suivent ces principes apportent d’excellentes expériences utilisateur sur Windows.

Matériaux : Acrylique et Mica

Acrylic et Mica sont des matériaux visuels qui donnent aux contrôles UI interactifs un style visuel « obstrué » distinct.

  • Utilisez acrylique pour appliquer un style semi-transparent à des surfaces temporaires telles que des menus contextuels, des menu volants et d’autres éléments que les utilisateurs peuvent ignorer.
  • Utilisez Mica pour ajouter une teinte adaptative subtile aux surfaces d’interface utilisateur de longue durée.

Mica est un matériau très performant qui doit être utilisé sur les surfaces d’IU ayant une présence durable, par exemple TitleBar, pour communiquer l’état actif ou inactif de l’application. Mica est une texture qui crée un plaisir visuel tout en préservant l’autonomie de la batterie.

Image de deux fenêtres d’application utilisant des matériaux de conception.

  • Mica doit être utilisé sur la couche de base de l'interface utilisateur de l'application pour indiquer son état actif. Il revient à une couleur unie lorsque l'application n'est pas en focus. Ainsi, nous vous recommandons d’utiliser Mica en arrière-plan de TitleBar.
  • Certains contrôles, par exemple NavigationView, intègrent déjà le comportement par défaut.
  • Lorsqu’une application qui utilise Mica s’exécute dans Windows 10 ou bas niveau, elle se dégrade correctement (Mica revient à une couleur unie).
  • Mica doit être utilisé sur les surfaces ayant une présence durable, contrairement à Acrylique, qui doit être utilisé sur les surfaces ayant une présence temporaire.
  • Si vous utilisez le matériau Acrylique, suivez les conseils d’aide relatifs à Acrylique, car nous avons mis à jour les couleurs pour les rendre plus éclatantes.

Directives sur le mica, Directives sur l'acrylique

Thèmes Sombre et Clair

Les thèmes sombres et clair permettent aux utilisateurs d’adapter votre application à leurs préférences visuelles. Windows 11 met à jour les tons de couleur pour être plus doux sur les yeux en évitant le blanc pur et le noir, ce qui rend les couleurs beaucoup plus agréables.

Image divisée d’une application avec un thème clair à gauche et un thème sombre à droite.

WinUI prend en charge le basculement entre les thèmes Sombre et Clair par défaut (voir Ressources de thème XAML). Pour les applications Win32, consultez Prendre en charge les thèmes Sombre et Clair dans les applications Win32. (La barre de titre dans les applications Win32 ne s’adapte pas automatiquement au thème Sombre. Veillez à suivre les instructions de la barre de titre dans l’article).

Éléments d’interface utilisateur actualisés

Windows 11 apporte de belles innovations d’interface utilisateur au système d’exploitation Windows que vous pouvez tirer parti de vos applications. Windows 11 geometry prend en charge les expériences d’application modernes. Les angles arrondis progressivement, les éléments imbriqués et les gouttières cohérentes se combinent pour créer un effet doux, calme et accessible qui met l’accent sur l’unité de l’objectif et la facilité d’utilisation.

Les modifications visuelles et comportementales sont intégrées à WinUI. Utilisez WinUI où vous pouvez tirer parti du travail que l’équipe de développement Windows a déjà fait. Si vous ne pouvez pas utiliser WinUI, envisagez de simuler les styles présentés dans les kits de ressources de conception et la galerie WinUI 3.

Les contrôles courants sont une façon d’utiliser ces mises à jour immédiatement. Utilisez les derniers contrôles communs autant que possible pour bénéficier gratuitement des avantages liés à la compatibilité et à l’accessibilité. De plus, il est plus rentable d’utiliser ces contrôles communs que de créer vos propres contrôles personnalisés, si vous prenez en compte les coûts de maintenance et de test.

Image de contrôles d’IU usuels

Extensions de menu contextuel et cibles de partage

Un menu contextuel est un menu de raccourcis que l'utilisateur appelle en effectuant un clic droit ou en appuyant longuement pour afficher des commandes pertinentes à l'élément de contrôle avec lequel il interagit. Les utilisateurs s’attendent à ce que l’apparence et le comportement des menus contextuels soient cohérents dans l’ensemble du système d’exploitation Windows. Utilisez les menus contextuels fournis par la plateforme chaque fois que cela est possible afin de maintenir une cohérence au sein du système.

Windows 11 affine le comportement des opérations de fichier contextuel dans le menu contextuel de File Explorer et la boîte de dialogue Partager. Si votre application crée des menus contextuels ou définit des cibles de partage, vous devrez peut-être apporter des modifications pour vous assurer qu’elles fonctionnent correctement avec Windows 11.

Menus contextuels

Pour Windows 11, nous avons amélioré le comportement du menu contextuel de File Explorer plusieurs façons :

  • Les commandes usuelles, par exemple Couper, Copier, Coller et Supprimer, ont été déplacées vers le haut du menu.
  • Les commandes Ouvrir et Ouvrir avec sont désormais regroupées.
  • Les extensions d'application sont regroupées sous les commandes Shell. Les applications contenant plusieurs verbes sont regroupées dans un panneau déroulant avec identification de l’application.
  • Les applications de fournisseur de fichiers cloud sont placées à côté des commandes de l’interpréteur de commandes pour hydrater ou déshydrater les fichiers.
  • Le menu contextuel plus ancien de Windows 10 (ainsi que les commandes les moins utilisées à partir du menu contextuel plus ancien) est toujours disponible via le Show more options élément en bas du menu. Shift + F10 ou la touche de menu clavier charge également le menu contextuel Windows 10.

Une image du menu contextuel dans Windows 11

Si votre application définit une extension de menu contextuel, les conditions suivantes doivent être remplies pour que l’extension apparaisse dans le nouveau menu contextuel Windows 11. Sinon, l’extension de menu contextuel de votre application apparaît dans l’ancien menu contextuel disponible via l’élément Afficher plus d’options.

  • Votre extension de menu contextuel doit être implémentée en utilisant l’interface IExplorerCommand. Les extensions de menu contextuel qui implémentent IContextMenu apparaissent à la place dans l’ancien menu contextuel.
  • Votre application doit être une application empaquetée pour avoir une identité de package au moment de l’exécution. Consultez Fonctionnalités nécessitant une identité de package pour certaines options d’empaquetage de votre application.
Boîte de dialogue Partager

Pour Windows 11, nous avons amélioré le comportement de la boîte de dialogue Partager de plusieurs façons.

  • Les paramètres de détection pour le partage de proximité se trouvent désormais en haut de la boîte de dialogue, et des paramètres supplémentaires sont disponibles en bas.
  • Toutes les applications peuvent désormais participer à la boîte de dialogue Partager en tant que cibles, notamment les applications de bureau non empaquetées et les PWA (applications web progressives) installées via Microsoft Edge.

Une image de la boîte de dialogue Partager dans Windows 11

Iconographie et typographie

Windows 11 a des icônes mises à jour (« Icônes Segoe Fluent ») , une prise en charge améliorée des icônes animées et une police d’interface utilisateur new UI (« Variable segoe UI »). Utilisez ces nouvelles icônes et polices chaque fois que possible pour être cohérentes sur Windows 11. La nouvelle police apporte une géométrie beaucoup plus douce et rend le texte bien plus lisible.

Image d’une sélection d’icônes Windows.

  • De nouvelles icônes appelées « Segoe Fluent Icons » ont été introduites pour les icônes de type monoligne. Les contrôles dans WinUI 2.6 et les versions ultérieures utilisent automatiquement les nouvelles icônes et la nouvelle typographie.
  • Les icônes de type de fichier ont été mises à jour. Si votre application utilise des icônes dans imageres.dll ou shell32.dll, celles-ci sont mises à jour automatiquement. Sinon, une mise à jour manuelle du style peut s’avérer nécessaire.
  • Icônes d’application : suivez les dernières instructions pour les icônes dans les applications Windows utilisées dans des emplacements tels que les lanceurs au démarrage et à la barre des tâches.
  • Icônes animées : la prise en charge de l’animation Lottie a été ajoutée à WinUI. Nous vous recommandons d’utiliser la fonctionnalité AnimatedIcon pour animer vos icônes de manière visible. Comme pour d’autres changements de style, vous avez besoin de WinUI 2.6 ou d’une version ultérieure.
  • Les expériences personnalisées écrites en XAML qui spécifient Segoe UI dans le code, doivent spécifier Segoe UI Variable à la place.

Note

Lorsqu’une application qui utilise la nouvelle police s’exécute dans Windows 10 ou de bas niveau, elle revient à utiliser l’ancienne police et à dégrader correctement.

Comportement et style des fenêtres

Les applications s’exécutent dans un cadre fourni par Windows. Les utilisateurs s’attendent à ce que l’apparence et les comportements intégrés de Windows soient cohérents entre les fenêtres d’application. Pour vous assurer que votre application ressemble et fonctionne comme les utilisateurs l'attendent sous Windows 11, envisagez de prendre en charge les fonctionnalités répertoriées ici.

Barre de titre et boutons de légende

Les utilisateurs interagissent avec la barre de titre et les boutons de légende (réduire, agrandir, fermer) pour redimensionner, déplacer et fermer les fenêtres d’application. Une expérience cohérente aide les utilisateurs à utiliser votre application en douceur. Consultez barre de titre de l'application Windows pour en savoir plus sur la conception de la barre de titre et du bouton de légende pour Windows.

Vous pouvez utiliser les API Windows App SDK pour intégrer du contenu de l'application avec la barre de titre dans les applications WinUI, .NET, WinForms et WPF.

Disposition d’ancrage

L’ancrage des fenêtres est considérablement amélioré dans Windows 11, et le menu Disposition d’ancrage est une nouvelle fonctionnalité qui permet aux utilisateurs de découvrir et de simplifier l'utilisation de la puissance de l’ancrage des fenêtres. Utilisez le menu Disposition d’ancrage pour tester votre application dans différentes dispositions d’ancrage et pour vérifier que votre application prend en charge les différentes tailles d’ancrage (1/2, 1/3 et 1/4 d’écran).

Vous pouvez facilement accéder aux dispositions d’ancrage en plaçant le pointeur de la souris sur le bouton d’agrandissement d’une fenêtre ou en appuyant sur Win + Z. Après avoir appelé le menu présentant les dispositions disponibles, les utilisateurs peuvent cliquer sur une zone d’une disposition pour ancrer une fenêtre dans cette zone particulière, puis utiliser l'Assistant Ancrage pour finaliser la création d’une disposition entière de fenêtres. Les dispositions d’ancrage sont adaptées à la taille et à l’orientation actuelles de l’écran, y compris la prise en charge de trois fenêtres côte à côte sur de grands écrans en mode paysage et de deux fenêtres empilées en haut et en bas sur des écrans en mode portrait.

La plupart des applications prennent automatiquement en charge le menu avec des dispositions de capture, mais dans certains cas, vous devrez peut-être faire un peu de travail pour les activer :

Vous obtiendrez automatiquement ces fonctionnalités si vous utilisez le fenêtrage avec Windows App SDK pour :

  • Configurer le style des fenêtres à l’aide de modèles prédéfinis.
  • Personnaliser la barre de titre des fenêtres.

Coins arrondis

Nous avons arrondi les coins des bordures de fenêtre dans Windows 11. Notre équipe de recherche dédiée à l’expérience utilisateur a découvert que la géométrie arrondie procure psychologiquement un sentiment de sécurité et qu’elle rend l’IU de l’application beaucoup plus facile à analyser. Les utilisateurs se sentent ainsi moins intimidés, et l’application est plus attrayante. Le degré d’arrondi a également été choisi avec soin. Nous avons mené des recherches dans l’ensemble de l’entreprise et auprès des utilisateurs pour trouver un équilibre entre une impression de professionnalisme et une approche plus douce et engageante.

Image d’une fenêtre d’application avec des angles arrondis.

Dans la plupart des cas, la fenêtre de votre application comporte des angles arrondis par défaut sur Windows 11. Si vous personnalisez votre fenêtre d'application et que vous n'avez pas d'angles arrondis, consultez Appliquer des angles arrondis dans les applications de bureau pour Windows 11 pour certaines choses que vous pouvez faire. Vous devez également éviter de personnaliser les bordures et les ombres des fenêtres afin de ne pas empêcher le système d’arrondir les angles des fenêtres.

Points d’intégration shell

L’intégration de l’interpréteur de commandes Windows permet aux utilisateurs de tirer parti de votre application, même lorsqu’elle n’est pas en cours d’exécution au premier plan ou visible à l’écran. Lorsque votre application s’intègre bien à Windows, elle fait partie du flux de travail de l’utilisateur avec d’autres applications et permet de créer une expérience transparente.

Notifications de type toast

Les notifications toast sont des notifications Windows qui apparaissent en bas de l’écran de l’utilisateur et dans le centre de notifications.

  • Personnalisez, rendez actionnables et assurez-vous que les notifications sont utiles à vos utilisateurs. Donnez à vos utilisateurs ce qu’ils veulent, pas ce que vous voulez savoir.
  • Évitez les notifications bruyantes. Trop d’interruptions de votre application entraînent la désactivation par les utilisateurs de ce canal de communication critique pour votre application.
  • Répondez à l’intention de l’utilisateur. La sélection d’une notification doit lancer votre application dans le contexte de la notification. La seule exception à cette règle intervient lorsque l'utilisateur sélectionne un bouton de votre notification lié à une tâche d'arrière-plan, comme une réponse rapide.
  • Offrez une expérience de centre de notifications cohérente. Organisez efficacement le centre de notifications en supprimant les anciennes notifications.

Pour plus d’informations sur les notifications toast, consultez Bases de la conception des notifications.

Performances et principes de base

Les utilisateurs de Windows s'attendent à ce que les applications Windows excellent en matière de performances et de principes de base. Lorsque vous concevez et créez votre application, gardez à l’esprit l’optimisation de l’utilisation de la mémoire, de la consommation d’énergie, de la réactivité, de la fiabilité et de l’impact sur la durabilité à long terme. L’allocation de temps pour tester et mesurer les principes fondamentaux et les performances de votre application garantit que vos utilisateurs disposent d’une expérience de première classe.

Suivre les meilleures pratiques mentionnées dans cette section vous aide à répondre aux attentes de vos clients selon ces critères.

Pour plus d’informations, consultez la vue d’ensemble des performances et des principes de base. Cet article répond à des questions telles que « Qu’est-ce que les performances de l’application et pourquoi est-il important ? » et « Quels outils puis-je utiliser pour mesurer les performances des applications Windows ? » Il est également lié à des études de cas, des blogs connexes, des communautés de soutien et des informations sur la façon dont l’ingénierie des performances croise la durabilité en réduisant l’impact de votre application sur notre planète.

Optimisation du système d’exploitation et du matériel

Vous pouvez créer, empaqueter et distribuer des applications Windows de plusieurs façons. Les meilleures pratiques de cette section vous aident à optimiser ces aspects de votre application dans les configurations matérielles.

Les utilisateurs exécutent Windows sur des appareils classiques ainsi que sur toute une gamme d’appareils modernes, de plus en plus diversifiée. Les appareils sont aujourd’hui fournis non seulement avec des architectures x86/x64, mais aussi arm-based ; non seulement avec la souris et le clavier, mais aussi les écrans tactiles, les pavés tactiles et les stylets ; avec des caméras, gps et capteurs comme des gyroscopes ; et avec des graphiques et des microprogrammes de traitement neuronal qui permettent non seulement des visuels étonnants, mais aussi l’intelligence artificielle accélérée par le matériel (IA). Les clients s’attendent à ce que les applications tirent parti du matériel (qu’ils ont payé !) et qu’elles tiennent compte du facteur de forme de l’appareil pour offrir une expérience optimale.

Attache d'application MSIX et Azure Virtual Desktop

Pour optimiser l’exécution de votre application dans un environnement d’entreprise, ajoutez la prise en charge de l’attachement d’application MSIX.

MSIX app attach vous permet de fournir des applications MSIX aux machines physiques et virtuelles. Il est spécifiquement conçu pour Azure Virtual Desktop (AVD), un service de virtualisation d'applications et de bureau qui s'exécute sur le cloud. L’utilisation de l’attachement d’application MSIX avec AVD peut vous aider à améliorer les temps de connexion pour les utilisateurs et à réduire les coûts d’infrastructure pour votre entreprise.

Windows on ARM

Windows peut s’exécuter sur des appareils Arm. Les PC Arm bénéficient d'une autonomie prolongée et d'une prise en charge intégrée des réseaux de données mobiles. Ces PC offrent également une excellente compatibilité des applications et vous permettent d’exécuter vos applications existantes x86 et x64 non modifiées.

Pour des performances optimales, permettre à vos applications de tirer pleinement parti de l’architecture du processeur Arm écoénergétique en créant une version Arm complète ou en optimisant les parties de la base de code qui bénéficient le plus des performances natives. Pour plus d’informations sur ces techniques, consultez Windows on Arm et Arm64EC pour les applications Windows 11 sur Arm.

Notifications Push

Push notifications vous permettent d’envoyer des informations de votre service cloud à votre application de manière optimisée pour les performances. Les notifications Push incluent les notifications brutes, les notifications de badge, ainsi que les notifications toast envoyées à partir de votre service cloud.

  • Utilisez des notifications Push pour réveiller l’application ou le client plutôt que de toujours l’exécuter pour optimiser les performances sur l’appareil de l’utilisateur.
  • N’utilisez pas de canaux de notification pour envoyer des publicités.
  • Respectez retry-after les en-têtes : cette pratique protège le service et garantit la réussite de la remise des notifications.
  • Supprimez les canaux expirés ou révoqués du système. Le service de notification Windows (WNS) ne traite pas les demandes de canaux expirés ou révoqués.
  • Évitez les rafales soudaines et importantes de requêtes adressées à WNS. Ce modèle peut entraîner des réponses limitées.
  • Utilisez l’en-tête MS-CV. Cet en-tête aide à la traçabilité et aux diagnostics de bout en bout.
  • Dotez-vous d’un mécanisme de sauvegarde en cas de dysfonctionnement des notifications.
  • Utilisez Azure Notification Hubs (ANH). ANH vous donne access aux fonctionnalités d’engagement telles que le ciblage des audiences, la planification des notifications et la diffusion de notifications. Si vous êtes un développeur Windows uniquement aujourd’hui, l’utilisation d’ANH facilite la transition de votre infrastructure de notifications vers d’autres plateformes à l’avenir.

Découverte et gestion des applications

Les expériences d’installation, de mise à jour et de désinstallation fiables sont des éléments importants d’une expérience utilisateur cohérente et de haute qualité. Les meilleures pratiques suivantes permettent de s’assurer que votre application laisse une bonne impression lorsque les utilisateurs découvrent et gèrent celui-ci :

Découverte des applications

  • La description de votre application sur le Microsoft Store rend votre application plus détectable pour les utilisateurs.
  • Si vous hébergez votre application sur plusieurs canaux (par exemple, sur un site web et sur le Microsoft Store), utilisez une identité d’application cohérente et un mécanisme de mise à jour sur tous les canaux.
  • Distribuez votre application via le Microsoft Store pour la rendre plus découvrable pour les utilisateurs. Notez que les utilisateurs de Windows accèdent aux applications du Store via Windows Package Manager WinGet. À défaut de la publier sur le Microsoft Store, vous pouvez quand même rendre votre application facilement découvrable dans WinGet via le référentiel WinGet.

Installation et désinstallation

  • Prenez en charge une installation par utilisateur. Cette prise en charge permet aux utilisateurs d'installer des logiciels plus facilement et d'éviter les invites UAC.
  • Assurez-vous que l’installation de votre application est sans erreur, transparente et réfléchie en termes de gestion des fichiers. L’installation de votre application ne doit pas laisser de fichiers temporaires.
  • Dans la mesure du possible, évitez de demander des autorisations élevées pour l'installation et le redémarrage du système d'exploitation.
  • Prenez en charge l’installation sans assistance. Cette prise en charge est importante pour la facilité de gestion des applications dans les environnements d’entreprise.
  • Vérifiez que votre application est répertoriée dans la liste Applications installées>.
  • Envisagez d’utiliser MSIX pour offrir aux utilisateurs une expérience d’installation, de mise à jour et de désinstallation transparente. MSIX supprime automatiquement les fichiers binaires et les données de l’application. Pour plus d’informations sur la façon dont les applications empaquetées gèrent les fichiers et les entrées de Registre, consultez Comprendre la façon dont les applications de bureau empaquetées s’exécutent sur Windows.
  • Pour les applications non empaquetées, assurez-vous que les utilisateurs peuvent facilement désinstaller votre application via la liste Applications installées> dans Paramètres. Lorsque les utilisateurs désinstallent votre application, assurez-vous que les entrées de menu Démarrer, les fichiers, les répertoires, les entrées de Registre et les fichiers temporaires sont également supprimés. Envisagez d’offrir à vos utilisateurs la possibilité de conserver leurs données lorsqu’ils désinstallent votre application.
  • Assurez-vous que lors de la désinstallation de votre application, toutes les données binaires et d’application sont supprimées. Le contenu créé par l’utilisateur doit être stocké dans des emplacements tels Documentsque , que les utilisateurs peuvent conserver même après la désinstallation de l’application.
  • Évitez d’installer ou de mettre à jour des fichiers binaires système susceptibles de nécessiter un redémarrage.
  • Procédez à une intégration avec RestartManager pour enregistrer et restaurer l’état entre les mises à jour du système d’exploitation.

Mises à jour

  • Prendre en charge un mécanisme de mise à jour qui permet à votre application de redémarrer lorsqu’elle est pratique pour l’utilisateur. Envisagez d’utiliser les API de redémarrage Windows App SDK pour gérer le comportement de l’application pour les applications WinUI.
  • Assurez-vous que votre mécanisme de mise à jour télécharge uniquement les composants modifiés essentiels à mettre à jour. Cette approche réduit la bande passante réseau requise.
  • Fournissez un moyen de mettre à jour et de réparer votre application. Envisagez MSIX, qui gère automatiquement la réparation des mises à jour. Pour plus d’informations, consultez Mettre à jour et réparer automatiquement des applications automatiques.
  • Envisagez des mises à jour basées sur des notifications Push ou la vérification des mises à jour disponibles au démarrage ou au redémarrage de l'application.

Ressources supplémentaires

Accessibilité

Les applications Windows accessibles prennent en charge des expériences riches et inclusives pour autant de personnes que possible. Une conception inclusive permet la création de meilleurs produits pour tout le monde. Pour garantir le caractère accessible et inclusif de votre application, tenez compte de l’amélioration des fonctionnalités et de la facilité d’utilisation au niveau des aspects suivants :

  • Personnes handicapées (que ce soit de manière temporaire ou permanente).
  • Préférences personnelles.
  • Styles de travail spécifiques.
  • Contraintes situationnelles (par exemple les espaces de travail partagés, la conduite automobile, la cuisine, l’éblouissement, etc.).

En fait, l’Organisation mondiale de la Santé définit le handicap non pas comme une caractéristique personnelle, mais plutôt comme une interaction incompatible entre une personne et le monde physique et numérique qui l’entoure.

L'accessibilité est une bonne chose tant pour les personnes que pour les entreprises.

L’accessibilité relève d’une responsabilité

Plus d'un milliard de personnes dans le monde souffrent d'une forme de handicap. Toutefois, une seule en 10 n’a access à la technologie d’assistance nécessaire pour participer pleinement à nos économies et sociétés. En général, le taux de chômage des personnes handicapées est deux fois plus élevé que celui des personnes non handicapées. Et les handicaps , qu’ils soient situationnels, temporaires ou permanents, peuvent affecter n’importe quel de nous à tout moment.

L’accessibilité constitue une opportunité

Les organisations inclusives qui adoptent les meilleures pratiques pour l’emploi et le soutien des personnes handicapées dans le milieu de travail dépassent leurs pairs et font mieux pour attirer et maintenir les meilleurs talents. Les millénaires, qui sont 75% de la main-d’œuvre mondiale, choisissent généralement les employeurs qui reflètent leurs valeurs. Diversité et inclusion en tête de liste.

Intégration de l’accessibilité

L’incorporation de l’accessibilité dans vos applications Windows optimise l’engagement des utilisateurs, augmente la satisfaction des produits et encourage la fidélité des produits. La conception et l’implémentation proactives d’expériences accessibles réduisent généralement les coûts de développement et de maintenance à long terme.

Certaines solutions courantes incluent la fourniture d’informations dans d’autres formats (tels que les sous-titres d’une vidéo) ou l’activation de l’utilisation de technologies d’assistance (telles que les lecteurs d’écran).

Les applications conçues dans un souci d’accessibilité sont plus faciles à gérer, à mettre à jour et à reconcevoir. En plus de mettre votre application à la portée des personnes handicapées, la prise en compte de l’accessibilité peut réduire le coût de sa maintenance.

Pour obtenir des instructions détaillées sur la création d’applications Windows accessibles, consultez Accessibilité dans Windows.

Test de l’accessibilité

Accessibility Insights est une suite puissante d’outils permettant aux développeurs de tester l’accessibilité de leurs applications et services. Utilisez les outils suivants pour tester l’accessibilité :

  1. Inspecter dans Accessibility Insights for Windows. Inspectez l’arborescence d’accessibilité pour rechercher des tâches faciles, comme des indices dans les étiquettes, des rôles incorrects et d’autres problèmes.
  2. Surveillance des événements dans Accessibility Insights pour Windows · Accessibility Insights. Consultez Supporting UI Automation Types de contrôle pour plus d’informations sur la surveillance des événements.
  3. Exécutez des vérifications automatisées Accessibility Insights dans vos demandes de tirage ou CI/CD. Pour plus d’informations, consultez axe-pipelines-samples.
  4. Corrigez tous les bogues que vous trouvez, car ils ont tous un impact direct sur l’accessibilité.

Sécurité et confidentialité

Une application non sécurisée peut constituer un point d’entrée permettant à un attaquant d’effectuer des activités malveillantes. Même si votre application n’a pas de bogues de sécurité, les acteurs malveillants peuvent utiliser votre application pour lancer leurs attaques via le hameçonnage et d’autres formes d’ingénierie sociale qui violent les limites de sécurité et de confidentialité. Les meilleures pratiques de cette section vous aident à atténuer les risques liés à la sécurité et à la confidentialité des utilisateurs.

Fonctionnalités de sécurité améliorées dans Windows

Windows repose sur une base de sécurité et de confidentialité, et Windows 11 est conçu pour être la version la plus sécurisée de Windows, et nous nous engageons à vous aider à créer des applications sécurisées qui tirent parti des dernières fonctionnalités de sécurité dans Windows.

Conseils de sécurité

  • Suivez le Security Development Lifecycle pour tous les développements.
    • La modélisation des menaces peut vous aider à éviter les failles de sécurité.
    • L’utilisation de bibliothèques, de langages et d’outils sécurisés limite les défauts d’implémentation.
    • Les valeurs par défaut sécurisées peuvent empêcher les problèmes de sécurité causés par l’erreur de l’utilisateur.
  • N’exigez pas de privilèges administratifs pour installer votre application.
    • Idéalement, votre application doit prendre en charge les installations administratives et par utilisateur.
    • L’utilisation de l’empaquetage MSIX est un moyen d’atteindre cet objectif.
  • N’exigez pas de privilèges administratifs pour exécuter votre application.
    • Si certaines fonctionnalités ont besoin de privilèges administratifs, envisagez de les séparer dans leurs propres processus pour réduire la surface d’attaque.
  • Utilisez des langages avec une sécurité de mémoire garantie, comme C#, JavaScript ou Rust, en particulier pour les chemins de code risqués, comme l’analyse de données non approuvées.
  • Utilisez toutes les atténuations de sécurité fournies par votre compilateur et votre ensemble d’outils (voir Fonctionnalités de sécurité dans Microsoft Visual C++ pour Visual C++).
  • Utilisez systématiquement les bibliothèques standard du langage ou de l’infrastructure que vous avez choisi pour la cryptographie et tout autre code sensible à la sécurité. N’essayez pas de créer votre propre.
  • Signez numériquement tous les composants de votre application, pas uniquement le programme d’installation, mais aussi le programme de désinstallation (le cas échéant). Signez également tous les fichiers EXE, DLL et autres exécutables qui composent votre application.
    • Les signatures numériques permettent à l’utilisateur de vérifier l’authenticité de votre application et d’autoriser les administrateurs d’entreprise à sécuriser leurs appareils à l’aide de Windows Defender Application Control.
    • L’utilisation de l’empaquetage MSIX est un moyen d’atteindre cet objectif.
  • Assurez-vous que toutes les communications réseau passent par un transport sécurisé, tel que SSL.
  • Fournissez des garde-fous ou autres atténuations contribuant à protéger les utilisateurs contre l’exécution accidentelle d’actions dangereuses, même s'ils y sont contraints par des attaquants.
    • Simple « Êtes-vous sûr de vouloir faire X ? Les boîtes de dialogue Oui/Non ne sont généralement pas efficaces, car les utilisateurs sont conditionnés pour cliquer sur « Oui ».

La plupart des applications modernes collectent et utilisent une grande quantité de données, y compris des données personnelles, pour diverses raisons. La télémétrie, l'amélioration des produits et la monétisation comptent parmi les raisons courantes d'utiliser des données, mais les utilisateurs et les régulateurs deviennent de plus en plus sensibles aux implications en termes de confidentialité de ces pratiques. Ils attendent de la transparence et un contrôle sur les données collectées et utilisées par les applications. Suivez les conseils ci-dessous pour répondre aux besoins de confidentialité de vos utilisateurs.

Recommandations en matière de confidentialité

Politique de confidentialité

Une politique de confidentialité facile à consulter et à comprendre augmente la confiance des utilisateurs en votre application. Assurez-vous que votre application offre une politique de confidentialité précise. Dans l’idéal, fournissez à la fois un document de synthèse écrit pour un public occasionnel (vos utilisateurs) et une politique juridique de longue forme (écrite pour vos avocats).

Votre politique de confidentialité doit :

  • Informer les utilisateurs sur les informations personnelles consultées, collectées ou transmises par votre produit.
    • Indiquez comment ces informations sont utilisées, stockées et sécurisées.
    • Indiquez les types de partie auxquels ces informations sont divulguées.
  • Décrivez les contrôles que les utilisateurs ont sur l’utilisation et le partage de leurs informations et comment ils peuvent access leurs informations.
  • Se conformer aux lois et réglementations applicables. Familiarisez-vous avec les réglementations en matière de confidentialité sur les marchés où votre application est disponible. Assurez-vous que votre application répond ou dépasse toutes les exigences en matière de divulgation, de droits d’utilisation, de demandes de suppression et d’autres préoccupations en matière de confidentialité.
  • Être actualisée au fur et à mesure que vous ajoutez de nouvelles fonctionnalités à votre produit.

Déclaration de confidentialité Microsoft

Collecte de données

  • Collectez la quantité minimale de données personnelles nécessaires pour terminer les expériences de votre application.
    • Ne collectez pas de données « juste en cas ». Avoir une raison valide de collecter toutes les données, telles que d’améliorer l’expérience du client ou de faciliter la monétisation.
  • Obtenez toujours le consentement de l’utilisateur avant de collecter et de stocker des données personnelles. Fournir à l’utilisateur un moyen simple de rétablir sa décision à l’avenir. Évitez les « modèles obscurs », comme celui consistant à afficher le bouton « Oui » de manière plus visible que le bouton « Non » dans une boîte de dialogue de consentement.
    • Consultez les réglementations applicables pour déterminer quelles divulgations et consentement spécifiques sont requises pour les types de données spécifiés. Par exemple, certaines régions peuvent permettre aux utilisateurs d’afficher, de modifier ou de supprimer les données que vous avez stockées à leur sujet.
  • Si vous devez transmettre des données sur le réseau, utilisez toujours des connexions sécurisées, telles que des connexions via TLS.
  • Évitez de stocker des données personnelles dans un emplacement centralisé, tel qu’un site web. S’il vous faut stocker des données personnelles, réduisez au minimum la quantité de données stockées, ne les conservez que pendant la durée strictement nécessaire et veillez à ce qu'elles soient chiffrées de manière sécurisée.
  • Vérifiez que toutes les bibliothèques ou kits sdk tiers que vous utilisez ont également de bonnes pratiques de confidentialité. Cette préoccupation n’est pas limitée aux kits SDK publicitaires uniquement : toute bibliothèque qui se connecte à Internet peut avoir un impact sur la confidentialité des utilisateurs de votre application.