web-dev-qa-db-fra.com

XAML vs WPF vs Store App vs Phone App vs UWA

Je sais que XAML est utilisé pour concevoir une interface utilisateur en combinaison avec Blend. Je suis confondu avec tant de termes, comme, comment XAML entre en jeu pour WPF, App Store, Phone App ou UWA. De plus, quelle est la différence entre WPF, Store App, Phone App et UWA. Cela signifie-t-il que l'ancien projet de bureau ne sera plus utilisé et remplacé par WPF, Store App ou UWA?

19
Yeasin Abedin Siam

Lorsque .NET a été publié vers ~ 2000, vous pouvez utiliser WinForms pour créer des applications de bureau pour Windows. Il permet d’accéder aux contrôles «natifs» (c’est-à-dire qu’un bouton créé dans WinForms est en fait un contrôle de bouton Windows à partir de user32.dll) en encapsulant l’API Windows dans du code géré. Ceux-ci peuvent s'exécuter dans n'importe quelle version de Windows sur laquelle la version appropriée du framework .NET est installée, y compris jusqu'à Windows 10.

WPF a été publié en 2006, une alternative à WinForms. WPF utilise XAML, un langage basé sur XML, pour déclarer les éléments de l'interface utilisateur. Dans une application WPF simple, le fichier .xaml décrit l'interface graphique et le fichier code-behind décrit la logique. DirectX est utilisé pour dessiner tout ce qui est décrit dans le fichier .xaml dans la fenêtre.

Comme Winforms, les programmes créés avec WPF peuvent s’exécuter dans n’importe quelle version de Windows sur laquelle la version appropriée du framework .NET est installée, y compris jusqu’à Windows 10. Notez que l’utilisation de XAML est totalement facultative. Tous les éléments d'interface utilisateur que vous décrivez à l'aide de XAML peuvent également être créés à l'aide de votre langage .NET C # ou VisualBasic.NET. Mais utiliser XAML est généralement plus simple. Voir Pour XAML ou non pour XAML (MSDN Blogs)

De XAML (Wikipedia) :

XAML étant simplement basé sur XML, les développeurs et les concepteurs peuvent partager et éditer du contenu librement entre eux sans nécessiter de compilation.

À partir de ~ 2012 avec Windows 8, un nouveau type d'application appelée metro/modern/windows-8/windows-store-apps peut être créé. Ces applications sont similaires à WPF en ce qu'elles utilisent XAML pour décrire l'interface graphique. Ces applications ne peuvent fonctionner que sous Windows 8, 8.1 et Windows 10. Windows 8.1 a ajouté quelques améliorations et fonctionnalités, mais est resté essentiellement le même. La même technologie a été utilisée pour créer des applications pour Windows Phone.

Avec la sortie de Windows 10, Microsoft a créé UWP (Universal Windows Platform) grâce à laquelle vous pouvez utiliser la même base de code pour cibler différents types de périphériques (ordinateurs de bureau/mobiles/xbox/IoT/holographiques). Ces applications conçues pour le programme UWP sont similaires aux applications Windows 8/8.1 antérieures. Comme auparavant, XAML est utilisé pour décrire l'interface graphique.

Pour la Windows Store uniquement, il n'y a pas de compatibilité en arrière. La timeline va Windows 8 -> Windows 8.1 -> Windows 10/UWP. Une application créée en UWP peut uniquement s'exécuter sous Windows 10 et une application créée sous Windows 8.1 ne peut pas s'exécuter sous Windows 8. 

47
Aniruddha Varma

Je recommanderais vivement de faire référence à ce fil de discussion dans stopbyte, il contient beaucoup plus de détails et une explication des concepts à la base de WPF, UWP et WinRT .

En ce qui concerne WinForms, je pense que c'est maintenant l'histoire. Ont été presque remplacés par WPF . Je crois que Microsoft a cessé de développer Windows Forms et a probablement également cessé de le maintenir. 

0
Yassine Yousfi