Fermer

mars 24, 2020

Création d'applications de bureau modernes – WinUI 3.0 est-il la solution?


Dans cet article, nous allons décrire ce que sont UWP et WinUI, les comparer à d'autres frameworks et essayer de répondre à la question: "Quel framework de bureau Microsoft dois-je utiliser pour mon application de bureau?"

Avec l'introduction de Microsoft WinUI 3.0 et promettant le nouveau projet d'application de bureau appelé WinUI UWP est à venir, la question de "quelle façon dois-je utiliser pour créer mon application de bureau?"

Beaucoup d'entre vous savent probablement déjà ce qu'est UWP ou WinUI, mais dans ce post, nous décrirons ce que sont WinUI et WinUI 3.0, quelles sont les différences avec les frameworks de bureau MS existants, et comment choisir le meilleur pour vos besoins:

Essayons de répondre à ces questions:

  • Qu'est-ce que l'UWP?
  • Qu'est-ce que WinUI?
  • Qu'est-ce que WinUI 3.0?
  • Qu'est-ce que WinUI UWP? [19659006] En quoi une application WinUI UWP diffère-t-elle des applications UWP existantes?
  • Laquelle de WinForms, WPF ou WinUI UWP convient le mieux à mes besoins?
  • Comment créer une application WinUI UWP (à l'aide de WinUI 3.0)?

est UWP?

UWP signifie Universal Windows Platform. Microsoft le décrit en en déclarant : Windows 10 présente la plate-forme Windows universelle (UWP), qui fournit une plate-forme d'application commune sur chaque appareil exécutant Windows 10 . Les API de base UWP sont les mêmes sur tous les appareils Windows.

L'UWP dispose donc d'API que vous, en tant que développeur, utilisez pour cibler tous les appareils qui prennent en charge Windows 10. En faisant cela, vous pouvez écrire votre application une fois et la déployer sur tous les appareils pris en charge par Windows 10 comme PC, tablettes, HoloLens, etc.

UWP est distribué dans le cadre de Windows, donc les versions plus récentes comprenaient des correctifs, des améliorations et de nouveaux contrôles d'interface utilisateur. Mais tout le monde ne peut pas se permettre le luxe de mettre à jour vers la dernière version de Windows, donc Microsoft a décidé qu'il serait préférable que la bibliothèque d'interface utilisateur soit découplée de Windows. Ainsi, WinUI est né. Vous pouvez le considérer comme une API extraite d'UWP, ce qui facilite la mise à jour.

Qu'est-ce que WinUI?

Microsoft décrit WinUI comme: Bibliothèque Windows UI: les derniers contrôles natifs Windows 10 et styles Fluent pour vos applications . Actuellement, il existe deux versions de WinUI – la version 2.0 et WinUI 3.0.

La version officielle actuelle WinUI 2.x peut être utilisée pour créer des applications de magasin UWP. Avec des fonctionnalités comme XAML Islands vous pouvez inclure des composants WinUI dans vos applications de bureau existantes, mais le processus n'est pas aussi simple à ce stade.

Qu'est-ce que WinUI 3.0?

 winui3xamlcontrolsgallery "title =" winui3xamlccontrolsgallery "/></p data-recalc-dims=

WinUI 3.0 est une mise à jour majeure de WinUI 2.0 qui étendra considérablement la portée de WinUI pour inclure la plate-forme d'interface utilisateur native de Windows 10, qui sera désormais entièrement découplée du SDK UWP. Ce que cela signifie est que vous serez en mesure de créer une application de bureau en utilisant WinUI 3.0 un peu comme utiliser WPF ou WinForms maintenant.

 legend "title =" legend "/></p data-recalc-dims=

À ce jour, la seule version Windows prise en charge est Windows 10 (à l'exclusion des entreprises qui ont payé le support étendu de Windows 7).

Lorsque WinUI 3.0 devient officiel, les développeurs .NET auront plusieurs options pour créer des applications de bureau:

  • Création d'une application de bureau WinUI 3.0
  • Création d'une application de bureau WPF
  • Création d'une application de bureau WinForms
  • Création d'une application de bureau MFC
  • Création Application de bureau Win32

Qu'est-ce que WinUI UWP?

Il s'agit d'une application UWP référençant et utilisant des composants Win UI 3.0 nous permettant de créer des UWP performants avec une belle interface utilisateur suivant le système de conception Fluent. Le nouveau type de projet WinUI UWP est disponible dans VS 2019 Preview.

En quoi est-ce différent de l'application UWP simple?

Fondamentalement, il s'agit d'une application UWP avec des références pré-ajoutées à l'assembly Microsoft.UI (WinUI3.0).

Mais, la principale différence est que les API WinUI 3.0 se trouvent dans l'espace de noms Microsoft.UI au lieu de l'espace de noms Windows.UI, vous devrez donc peut-être mettre à jour les espaces de noms lors de la copie et du collage d'un exemple de code. De même, les bibliothèques et composants utilisant des contrôles d'interface utilisateur de Windows.UI.Xaml ne sont pas compatibles avec WinUI 3.0 et doivent être mis à jour vers Microsoft.UI.Xaml.

Alors, WinForms, WPF ou la nouvelle application de bureau moderne (WinUI UWP)?

Disons d'abord quelques mots sur WinForms par rapport aux autres options

Ceci est le cadre des applications de bureau Windows qui a été introduit en même temps en tant que .NET lui-même, en 2002. En tant que tel:

+ Il s'agit d'un framework de bureau stable.

+ Beaucoup de ressources disponibles.

+ Un grand nombre de bibliothèques tierces telles que Telerik UI for WinForms sont également disponibles.

+ Peut-être le plus grand avantage de WinForms est qu'il est facile à apprendre.
+ Vous pouvez créer la mise en page entière avec la fonctionnalité glisser-déposer dans VS.

– Pas si bon en ce qui concerne la personnalisation de l'interface utilisateur et la construction d'un look and feel moderne.
– Pas très bon support DPI (sauf si vous utilisez une bibliothèque tierce qui fournit un support pour cela comme Telerik Interface utilisateur pour WinForms )

Windows Forms permet aux développeurs de créer des applications de bureau complexes, mais si vous avez besoin d'une apparence moderne, d'un support DPI élevé et d'une flexibilité, vous pouvez envisager d'autres options comme WPF et UWP (notamment les applications UWP existantes et les futures WinUI UWP)

Cependant, vous avez encore des options en ce qui concerne la belle interface utilisateur – essayez les thèmes modernes que Telerik UI for WinForms a à offrir.

Il est également important de noter que les applications WinForms peuvent s'exécuter sur des systèmes d'exploitation non compatibles avec UWP.

Et comme WPF et UWP nous permettent de créer une interface utilisateur plus moderne et présentent de nombreux avantages, examinons-les de plus près. WinUI est une partie importante de la construction de l'interface utilisateur avec UWP et WinUI 3.0 est l'avenir de WinUI, nous allons donc examiner directement la différence entre les applications WPF et UWP construites avec WinUI 3.0.

Comment choisir entre WPF et WinUI 3.0 UWP Apps?

Ces deux cadres présentent de nombreux avantages tels que:

  • Langage distinct pour décrire la disposition de l'interface utilisateur (XAML).
  • La liaison de données puissante permet une séparation plus nette de l'interface utilisateur et de la logique du domaine.
  • Commande et Model-View-ViewModel Pattern
  • Modèles de données / contrôle – une manière beaucoup plus propre que tout ce que Windows Forms peut offrir.
  • Styles – cool et simple. Il est si facile de styliser toutes vos entrées dans une application pour avoir la même apparence.
  • Virtualisation de l'interface utilisateur – J'ai des grilles de 100 000 lignes, ce qui fait vibrer un marché en mouvement. Les performances seraient terribles sans la visualisation de l'interface utilisateur qui est gratuite.
  • Prise en charge 3D.
  • Les deux plates-formes sont basées sur une interface graphique vectorielle basée sur DirectX

Voyons maintenant les différences.

Comment WPF est-il meilleur qu'une application WinUI 3.0?

  • Tout d'abord – c'est un framework plus stable qui a fait ses preuves dans le temps.
  • Il existe également de nombreuses ressources et composants tiers comme Telerik UI for WPF . Cette bibliothèque tierce ajoute au cadre plus de 140 composants et 20 thèmes modernes, y compris le style Fluent.
  • Il fonctionne également sur une autre version de Windows inférieure à Windows 10.

En UWP, l'application ne peut pas surmonter certains restrictions. Exemples:

  • L'accès à FileSystem est limité aux bibliothèques (par exemple, bibliothèque de documents)
  • L'accès aux ressources est défini par les capacités de l'application. De cette façon, un utilisateur voit ce que l'App peut faire (par exemple, utiliser le service de localisation).
  • Le démarrage de processus / services est interdit.
  • La communication interprocessus est interdite.

Et… si vous êtes un fan de F #, vous pouvez créer votre

En quoi une application WinUI UWP est-elle meilleure que WinForms et WPF?

Eh bien, en bref – elle donne un aspect moderne aux applications avec le modèle Fluent Design, et elle est construite sur la base de C ++ pour des performances optimisées par rapport aux applications WPF. Voici donc les avantages des nouvelles applications WinUI à venir:

  • Un aspect et une sensation modernes. Fluent Design System – cela vous permet de créer des applications de bureau modernes. C'est l'un des plus grands avantages des nouvelles applications de bureau. Interface utilisateur plus intuitive et engageante.
  • Toutes les versions de Windows 10
  • Fonctionne sur PC, ordinateur portable, tablette, téléphone, Xbox, IoT, Surface Hub
  • Optimisé pour le toucher
  • Optimisé pour l'utilisation et les performances de la mémoire [19659026] Animations plus interactives
  • Le code géré dans les applications WPF est en général plus lent que le code natif et nécessite plus de mémoire. Les applications UWP écrites en C # ou VB sont compilées en .NET Native. De cette façon, l'application a presque les hautes performances d'une application native.

Donc, comme WinForms et WPF ont déjà beaucoup de ressources dans ce post, nous nous concentrerons sur la façon de créer notre première application WinUI UWP.

Comment essayer WinUI 3.0 et créer une application WinUI UWP?

Comme cela est toujours en aperçu, la création d'un tel projet n'est pas intégrée dans VS. Voici les prérequis nécessaires:

  • Installer VS 2019 Preview 15.4 ou supérieur
  • Vérifiez si .NET Desktop Development et Universal Windows Platform les charges de travail de développement sont sélectionnées
  • ] Remplissez un formulaire Microsoft sur le lien suivant et après avoir terminé, vous recevrez un lien vers la galerie VS – https://aka.ms/WinUI3AlphaAccess
  • Téléchargez et installez l'extension VSX

Maintenant que nous sommes prêts, nous pouvons créer un nouveau projet WinUI UWP.

 blank "title =" blank1 "/></p data-recalc-dims=

Maintenant, nous pouvons voir que le projet lui-même contient une référence à l'assembly Microsoft.WinUI.

 project "title =" project2 "/></p data-recalc-dims=

Vous pouvez voir que l'espace de noms pour WinUI 3.0 est déjà là et nous pouvons simplement ajouter des composants WinUI. Par exemple, Rating, AcryicBrush et PlaneProjection.

< StackPanel Margin = "105" Background = "{ThemeResource SystemControlAcrylicElementBrush}" Hauteur = "400" Largeur = "400" >

< StackPanel. Projection >

< PlaneProjection RotationX = "- 35" RotationY = "- 35" RotationZ = "15" />

</ StackPanel.Projection >

< RatingControl />

< TextBlock Margin = "10" > Tapez quelque chose en dessous </ TextBlock >

< TextBox Marge = "10" > </ TextBox >

< Bouton Marge = "10" Contenu = "Cliquez" Largeur = [19659089] "100" />

</ StackPanel >

Et voici où votre imagination ou analyse de rentabilisation arrive sur la scène – commencez à explorer et partagez votre expérience!
 result "title =" result "/></p data-recalc-dims=

Ressources:

En savoir plus sur WinUI 3.0 – https://docs.microsoft.com/en-us/uwp/toolkits/winui3/

Site WinUI officiel – https://microsoft.github.io/microsoft-ui-xaml/

Résumé

Microsoft nous donne actuellement plus d'une technologie pour créer une application de bureau, mais si vous voulez vous concentrer sur une apparence moderne, essayer WinUI 3.0 est la bonne chose à faire. Cependant, quelle que soit la technologie que vous choisissez, Telerik UI est là pour vous aider! N'hésitez pas à nous écrire si le composant ou la fonctionnalité dont vous avez besoin n'est pas disponible et restez à l'écoute pour tous les nouveaux employés de Telerik et KendoUI pour R2 2020!





Source link