Ich habe die meisten wichtigen Themen zu WPF vs. WinForms gelesen und bin festgefahren in der unglücklichen Ambivalenz, in die Sie geraten können, wenn Sie sich zwischen der bewährten Vorgängertechnologie (Winforms) und deren Nachfolger (WPF) entscheiden.
Ich bin ein langjähriger erfahrener Delphi-Programmierer, der endlich den Sprung nach C # schafft. Meine Kollegen unter den Delphi-Programmierern werden verstehen, dass ich gespannt bin, dass Anders Hejlsberg, der in Delphi berühmt ist, der Architekt hinter C # war. Ich bin stark von Delphis benutzerdefinierten VCL-Komponenten abhängig, insbesondere von denen, die mehrstufige Assistenten und Komponenten erstellen, die als Container für untergeordnete Komponenten fungieren.
Vor diesem Hintergrund hoffe ich, dass diejenigen von Ihnen, die von Delphi zu C # gewechselt sind, mir bei meiner Entscheidung zwischen WinForms und WPF beim Schreiben meiner ersten Anwendungen helfen können. Beachten Sie, dass ich sehr ungeduldig bin, wenn Codierungen und Dinge wie vollständige automatische Vervollständigung und ordnungsgemäße Debuggerunterstützung ein Projekt für mich erstellen oder unterbrechen können, einschließlich der Möglichkeit, sofort verfügbare Informationen zu API-Funktionen und -Aufrufen zu finden, und insbesondere Problemumgehungen für Fehler .
Die SO-Threads und Kommentare im Datumsbereich von Anfang 2009 geben mir große Sorge über WPF, wenn es um potenzielle Frustrationen geht, die meine C # UI-Entwicklungscodierung beeinträchtigen könnten. Andererseits ist es ebenso problematisch, übermäßig viel Zeit damit zu verbringen, eine API-Technologie zu erlernen, die, auch wenn sie nicht aufgegeben wird, bald ersetzt wird (WinForms), und ich finde die GPU-Unterstützung in WPF verlockend.
Daher meine Ambivalenz. Da ich noch keine der beiden Techniken gelernt habe, habe ich die seltene Gelegenheit, einen Neuanfang zu machen, und muss mich nicht der großen "Verlernen" -Kurve stellen, die in verschiedenen Threads erwähnt wurde, wenn ein WinForms-Programmierer zu WPF wechselt. Wenn die Verwendung von WPF für einen ungeduldigen RAD-Entwickler wie mich zu frustrierend ist oder andere schwerwiegende negative Folgen hat, bleibe ich bei WinForms, bis WPF den gleichen Grad an Unterstützung und Benutzerfreundlichkeit erreicht. Um Ihnen ein konkretes Beispiel für meine Psychologie als Programmierer zu geben, habe ich VB und anschließend Delphi verwendet, um den wirklichen Schmerz des Codierens mit MFC, einer Windows-UI-Bibliothek, unter dem viele Entwickler bei der Entwicklung früher Windows-Apps zu leiden hatten, vollständig zu vermeiden. Ich habe mein Glück, MFC zu vermeiden, nie bereut.
Es wäre auch beruhigend zu wissen, ob Anders Hejlsberg an der Architektur von WPF und / oder WinForms mitgewirkt hat und ob es Unterschiede in der kreativen Vision und Benutzerfreundlichkeit gibt, die in beiden Codebasen enthalten sind. Lassen Sie mich zum Schluss noch einmal für die Delphi-Programmierer wissen, wie viel "IDE-Schock" ich zu erwarten habe, wenn ich WPF im Gegensatz zu WinForms verwende, insbesondere wenn es um die Unterstützung von Debuggern geht. Alle für 2011 aktualisierten Kommentare zum Stellenmarkt sind ebenfalls willkommen.