84 votes

Avantage de WPF app vs Winform pour applications professionnelles ?

Je sais asp.net et winform développement. Je ne suis pas le type de développeur, qui saute dans une nouvelle technologie tout simplement parce que c'est nouveau. Il doit me donner des avantages supplémentaires tels que la hausse de la productivité.

Quels sont les avantages de WPF plus de Winforms pour pur des applications d'entreprise? Je ne suis pas intéressé par le supplément de bonbons pour les yeux, de l'animation, de dégradés, d'affichage des images effets et ainsi de suite qui WPF fournit. L'entreprise applications sont pour l'entrée de données, la communication de données et peut-être quelques cartes et statique d'affichage des photos.

Comment WPF aider dans ces applications? Mieux plus riche de la liaison de données? WinForm est de la maturité de la technologie éprouvée et j'aime le fait que je peux tout faire dans Visual Studio vs plusieurs IDE pour WPF (VS et Mélange de la famille). En Plus je pense que WPF n'est pas aussi riche de données de liaison de contrôles comme leur Winform homologues (DataGridView, etc..). Autant que je sache, Microsoft va toujours soutenir les Winforms pour de nombreuses années.

Essayez de convaincre quelqu'un comme moi pour passer.

101voto

Brad Leach Points 9012

Je sais asp.net et winform développement. Je ne suis pas le type de développeur, qui saute dans une nouvelle technologie tout simplement parce que c'est nouveau. Il doit me donner des avantages supplémentaires tels que la hausse de la productivité.

Pour mon équipe, WPF s'est avéré être beaucoup plus rapide que WinForms pour développer des applications avec. Nous avons récemment publié un de taille moyenne d'application en 32 jours. Nous avons eu l'avantage d'une expérience WPF développeur de l'équipe, et inexpérimenté gars qui étaient désireux d'apprendre la technologie. Il y avait beaucoup de moral et de la productivité a été impressionnant.

WinForm est de la maturité de la technologie éprouvée et j'aime le fait que je peux tout faire dans Visual Studio vs plusieurs IDE pour WPF (VS et Mélange de la famille).

Vous considérez-vous comme une main-codeur, ou un glisser-déposer codeur? Si vous vous considérez comme un glisser-et-compte-gouttes, que la récolte actuelle de WPF outillage pourrait ne pas être approprié pour vous. Peut-être attendre pour Visual Studio 2010? Je travaille presque exclusivement dans le code XAML. La plupart WPF ils seront probablement d'accord que c'est le moyen le plus efficace de créer des applications WPF pour le moment. Mais ensuite, j'ai aussi mon métier HTML à la main, de sorte qu'il se sent naturel pour moi...

Quels sont les avantages de WPF plus de Winforms pour pur des applications d'entreprise? Je ne suis pas intéressé par le supplément de bonbons pour les yeux, de l'animation, de dégradés, d'affichage des images effets et ainsi de suite qui WPF fournit.

J'ai l'habitude de penser de cette façon, mais j'ai récemment développé une application d'entreprise qui a des gradients de base de l'animation et des effets. Ces caractéristiques de fantaisie ont été ajoutés pour améliorer l'expérience utilisateur. Pourquoi les entreprises devraient-apps être Battleship Grey? Pourquoi devraient-ils être inutilisable? Accordé, il n'est pas de couleur, des dégradés, des animations qui fait une application d'entreprise utilisable, mais l'utilisation de ces effets peuvent aider à l'expérience de l'utilisateur, et c'est ce qui est important pour moi. J'aurais pu faire tout ce que je faisais dans l'application WPF, en WinForms - ça aurait pris beaucoup plus de temps.

Mieux plus riche de la liaison de données?

Le databinding soutien est vraiment étonnant. C'est mon plus appréciés de la fonctionnalité de la plate-forme. Découvrez ce merveilleux Databinding Triche.

Essayez de convaincre quelqu'un comme moi pour passer.

J'ai décidé que je ne vais pas essayer de convaincre quelqu'un d'autre pour passer en WPF. Les développeurs, j'ai essayé de "convaincre" (tous connu des Winforms les développeurs) ont généralement eu du mal avec la plate-forme. Ils ne sont pas investis dans la technologie. Ils ne sont pas "bien faire". J'encourage les gens à consulter la technologie pour voir si c'est juste pour eux en tant que développeur. La courbe d'apprentissage est énorme. Si vous l'apprendre par les livres, découvrez ce DONC, après pour certains mini-reviews sur WPF livres. Si vous apprenez par des vidéos, découvrez les windowsclient.net WPF vidéos. Si vous apprenez par exemple, découvrez ce ou ce post. Oubliez ce que vous savez à propos de WinForms. WPF vraiment semble plus proche de l'ASP que WinForms. Créer quelques exemples d'applications. Voyez si cela fonctionne pour vous et votre équipe.

Comme vous êtes polyvalent (asp.net/winform compétences), vous pouvez voir l'avantage de la qualification en WPF, il est très étroitement liée à Silverlight. Silverlight remplit l'espace entre les applications clientes riches et des applications web.

Personnellement, je pense que WPF est le meilleur client du côté de la technologie disponible pour le .NET framework, et généralement éviter de développer en WinForms pour les travaux futurs. YMMV

Bonne chance avec votre décision.

11voto

Orion Edwards Points 54939

J’ai un peu d’expérience de winforms et ont seulement joué avec WPF, un petit peu, mais je suis vendu.

Pourquoi ?

  • BEAUCOUP plus de flexibilité. Si vous voulez faire quelque chose de non standard en winforms, douleur et souffrance s’ensuit, mais en WPF, c’est simple.
  • Beaucoup mieux databinding
  • Plus facile à mettre (une fois que vous comprenez les concepts de base, qui malheureusement prendra un certain temps)

4voto

Wayne H Points 41

Merci pour le post. Mon entreprise a des tonnes de temps investi dans les WinForms. Je ne peux pas imaginer que les moyennes de l'application dans 32 jours; notre certification des périodes sont des mois et des cycles de publication parfois tous les ans ou plus (malgré coller comme à proximité d'un développement Agile de la philosophie comme on peut), telle est la nature des applications que nous développons.

Je viens de jouer avec WPF pour la première fois et j'ai trouvé que j'pouvez obtenir certains avantages de WPF dans WinForms en utilisant ElementHost. J'ai étendu un WPF zone de texte, puis enveloppé mon extension de la classe dans une Victoire Formes UserControl et ont maintenant une application WinForms en utilisant WPF zone de texte, complet avec vérification orthographique de soutien.

Je suis impressionné de voir Microsoft a pensé à cette (hébergement WPF en WinForms et vice versa), car je ne peux vraiment pas voir mon entreprise de déménagement à WPF, si l'on ne peut la transition sur une longue période de temps; il ya tout simplement trop beaucoup investi dans le WinForms pour démarrer de nouveau. Avec mon expérience récente que j'ai peut commencer à parler à certains autres développeurs à propos de mon expérience récente et voir ce que leurs pensées sont. Je pense que WPF va prendre un certain temps pour s'habituer et qui semble cohérent avec les autres commentaires.

4voto

geofftnz Points 5844

Quand j'ai commencé à regarder WPF, j'ai considéré comme "Winforms avec des Graphiques Vectoriels" et a couru directement dans le côté de l'apprentissage de la falaise. La bonne façon de faire la transition de WinForms pour WPF est de prendre un héroïque quelle que soit la dose de narcotique, vous pouvez poser vos mains sur pour oublier tout ce que vous savez, puis commencer à partir de zéro.

Mais plus sérieusement - c'est beaucoup plus simple et plus facile si vous utilisez un format de type Model-View-ViewModel. Lire la suite à L'Orbifold, ce Google Groupes de threads et de Channel 9

Puis à un certain point, vous aurez une révélation et le début de la liaison de données de tout. Votre code-behind deviendra pas beaucoup plus qu'un appel à InitializeComponent().

1voto

Andrew Grant Points 35305

Pas tout à fait un doublon, mais vous pouvez trouver ce post utile sur les avantages de WPF, mis à part les nouveaux bits graphiques.

WPF ou WinForms pour outils internes ?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X