Avantage de l’application WPF vs Winform pour les applications professionnelles?

Je connais asp.net et le développement de winform. Je ne suis pas le type de développeur qui saute dans une nouvelle technologie simplement parce qu’elle est nouvelle. Il doit me donner des avantages supplémentaires, comme une productivité accrue.

Quels sont les avantages de WPF par rapport à Winforms pour les applications professionnelles pures? Je ne suis pas intéressé par l’oeil supplémentaire, l’animation, les dégradés, les effets d’affichage des images, etc., fournis par WPF. Les applications métier sont destinées à la saisie de données, à la génération de rapports de données et peut-être à certains graphiques et à l’affichage statique de photos.

Comment WPF aidera-t-il dans ces applications? Une meilleure liaison des données? WinForm est une technologie éprouvée et mature, et j’aime le fait que je puisse tout faire dans Visual Studio vs plusieurs IDE pour WPF (famille VS & Blend). De plus, je pense que WPF n’a pas de contrôles de liaison de données aussi riches que leurs homologues Winform (DataGridView..etc). AFAIK, Microsoft continuera à prendre en charge Winforms pendant de nombreuses années.

Essayez de convaincre quelqu’un comme moi de changer.

Je connais asp.net et le développement de winform. Je ne suis pas le type de développeur qui saute dans une nouvelle technologie simplement parce qu’elle est nouvelle. Il doit me donner des avantages supplémentaires, comme une productivité accrue.

Pour mon équipe, WPF s’est avéré beaucoup plus rapide que WinForms pour développer des applications. Nous avons récemment publié une application de taille moyenne en 32 jours-homme. Nous avions l’avantage d’un développeur WPF expérimenté dans l’équipe et de gars inexpérimentés désireux d’apprendre la technologie. Le moral était excellent et la productivité impressionnante.

WinForm est une technologie éprouvée et mature, et j’aime le fait que je puisse tout faire dans Visual Studio vs plusieurs IDE pour WPF (famille VS & Blend).

Vous considérez-vous comme un codeur manuel ou un codeur par glisser-déposer? Si vous vous considérez comme un glisser-déposer, la culture actuelle des outils WPF pourrait ne pas vous convenir. Peut-être attendre Visual Studio 2010? Je travaille presque exclusivement dans XAML. La plupart des WPF conviendront probablement que c’est le moyen le plus efficace de créer des applications WPF pour le moment. Mais alors, je construis aussi mon HTML à la main, donc ça me semble naturel …

Quels sont les avantages de WPF par rapport à Winforms pour les applications professionnelles pures? Je ne suis pas intéressé par l’oeil supplémentaire, l’animation, les dégradés, les effets d’affichage des images, etc., fournis par WPF.

J’avais l’habitude de penser de cette façon, mais j’ai récemment développé une application métier qui comporte des dégradés, une animation de base et des effets. Ces fonctionnalités sophistiquées ont été ajoutées pour améliorer l’expérience utilisateur. Pourquoi les applications professionnelles devraient-elles être Battleship Grey? Pourquoi devraient-ils être inutilisables? Certes, ce ne sont pas la couleur, les dégradés, l’animation qui rendent une application métier utilisable, mais l’utilisation de ces effets peut aider l’utilisateur, et c’est ce qui est important pour moi. J’aurais pu faire tout ce que je faisais dans l’application WPF dans WinForms – cela aurait pris beaucoup plus de temps.

Une meilleure liaison des données?

Le support de la databinding est vraiment incroyable. C’est ma seule fonctionnalité la plus appréciée dans la plate-forme. Jetez un coup d’œil à cette merveilleuse feuille de données .

Essayez de convaincre quelqu’un comme moi de changer.

J’ai décidé de ne convaincre personne de passer à WPF. Les développeurs que j’ai essayé de “convaincre” (tous les développeurs Winforms expérimentés) ont généralement eu des difficultés avec la plate-forme. Ils ne sont pas investis dans la technologie. Ils ne “comprennent” pas. J’encourage les gens à vérifier la technologie pour voir si cela leur convient en tant que développeur. La courbe d’apprentissage est énorme. Si vous apprenez par les livres, consultez ce post SO pour des mini-critiques sur les livres WPF. Si vous apprenez par vidéos, consultez les vidéos WPF de windowsclient.net . Si vous apprenez par exemple, consultez ceci ou ce post. Oubliez tout ce que vous savez sur WinForms. WPF semble vraiment plus proche de ASP que WinForms. Créez des exemples d’applications. Voyez si cela fonctionne pour vous et votre équipe.

Comme vous êtes polyvalent (compétences asp.net/winform), vous pouvez voir l’avantage de l’adaptation dans WPF, car elle est étroitement liée à Silverlight. Silverlight comble ce fossé entre vos applications clientes riches et vos applications Web.

Je pense personnellement que WPF est la meilleure technologie côté client disponible pour le framework .NET et évite généralement de développer dans WinForms pour de futurs travaux. YMMV

Bonne chance avec votre décision.

J’ai beaucoup d’expérience des winforms et j’ai seulement joué un peu avec WPF, mais je suis vendu.

Pourquoi?

  • BEAUCOUP plus de flexibilité. Si vous voulez faire quelque chose de non standard dans les winforms, la douleur et la souffrance s’ensuivent, mais dans WPF, c’est simple.

  • Une meilleure liaison de données

  • Plus facile à développer (une fois que vous avez compris les concepts de base, ce qui prendra malheureusement un certain temps)

Lorsque j’ai commencé à regarder WPF, je l’ai traité comme “Winforms with Vector Graphics” et j’ai couru directement sur le côté de la falaise d’apprentissage. La bonne façon de passer de WinForms à WPF est de prendre une dose héroïque de n’importe quel narcotique que vous pouvez mettre la main pour oublier tout ce que vous savez, puis recommencer à zéro.

Sérieusement cependant – c’est beaucoup plus propre et plus facile si vous utilisez un modèle tel que Model-View-ViewModel. En savoir plus sur The Orbifold , ce fil de discussion de Google Groupes et Channel9

Alors, à un moment donné, vous aurez une épiphanie et commencerez à tout relier. Votre code-behind ne sera guère plus qu’un appel à InitializeComponent ().

Merci pour le post. Mon entreprise a beaucoup de temps investi dans WinForms. Je ne peux pas imaginer obtenir une application de taille moyenne en 32 jours-homme; Nos périodes de certificateion sont des mois et des cycles de publication parfois annuels ou plus longs (malgré une philosophie de développement Agile aussi proche que possible), telle est la nature des applications que nous développons.

Je viens de jouer avec WPF pour la première fois et j’ai constaté que je pouvais tirer parti de WPF dans WinForms en utilisant ElementHost. J’ai étendu une zone de texte WPF, puis enveloppé ma classe étendue dans un contrôle utilisateur Win Forms et j’ai maintenant une application WinForms utilisant cette zone de texte WPF, complète avec la prise en charge de vérification orthographique.

Je suis impressionné de voir que Microsoft a pensé à cela (en hébergeant WPF dans WinForms et vice versa), car je ne vois vraiment pas mon entreprise passer à WPF à moins de pouvoir effectuer une transition sur une longue période; il y a juste trop investi dans WinForms pour recommencer. Avec mon expérience récente, je pourrais commencer à parler à d’autres développeurs de mon expérience récente et voir quelles sont leurs pensées. Je pense que WPF mettra du temps à s’y habituer et cela semble cohérent avec d’autres commentaires.

Pas tout à fait un doublon mais vous pouvez trouver ce post utile sur les avantages de WPF en dehors des nouveaux bits graphiques.

WPF ou WinForms pour les outils internes?

Il suffit de vérifier ces résultats de recherche ici dans Stackoverflow pour obtenir de nombreuses réponses. https://stackoverflow.com/search?q=WPF+Winforms

Imaginez si vous pouviez utiliser la même interface utilisateur (XAML) à partir de votre page ASP.NET/(Silverlight) avec votre application de bureau. Vous ne le construiriez qu’une seule fois, mais connectez-le à l’un ou l’autre … c’est l’une des intentions de WPF / XAML … sums-nous vraiment là? Pas encore mais se rapprocher.