This post originated from an RSS feed registered with .NET Buzz
by -.
Original Post: WPF vs WinForms: Softwareentwickler Performance-Test
Feed Title: Norbert Eder - Living .NET
Feed URL: http://feeds.feedburner.com/NorbertEder-Livingnet
Feed Description: Copyright (c)2005, 2006 by Norbert Eder
Was macht man Wochenends am Abend, wenn man mit einem anderen Softwareentwickler zusammen sitzt und über einiges aus der eigenen Branche sinniert? Ganz einfach, man kommt auf lustige Ideen und setzt diese dann auch gleich um (oder versucht es zumindest). So vergangenes Wochenende geschehen.
Ausgangspunkt war ein Thread auf dem .NET-Forum.de. Hier kam im Laufe einer Diskussion auf, dass es doch wesentlich schneller und einfacher unter WinForms möglich ist, eine Oberfläche zu erstellen. Schließlich muss man lediglich die einzelnen Elemente in den Designer ziehen, ein wenig konfigurieren und fertig ist die Lösung.
Dem konnte ich so nicht gänzlich zustimmen, zumal man (vorausgesetzt ist weniger ein gekonnter Umgang mit der Maus, vielmehr ist die Fingerfertigkeit bezüglich Tastatur gefragt) in der deklarativen Variante (XAML) sehr gut mittels Copy & Paste (Achtung, Murphy lauert) arbeiten kann und einem so sehr viel Tippslerei erspart bleibt.
Gut, also wurde ein Testszenario ersonnen: Eine kleine Anwendung, die mit Daten aus einem XML gefüttert wird, diese anzeigen soll und zusätzlich die Funktionalitäten Neu, Edit und Save behandeln sollte. Nachdem die Anforderungen definiert wurden musste noch die Stoppuhr gestartet werden und schon konnte es losgehen.
Leider hatten wir keine Videokamera zur Verfügung, sonst hätten wir es in der Tat gefilmt und online gestellt (auch wenn die Lösungen wirklich schmutzig waren), aber der zeitliche Unterschied war schon recht eklatant. Und damit meine ich, dass die WPF-Variante ungefähr 50% der Entwicklungszeit unter WinForms benötigte.
Nun. Natürlich ist dieser Test in keinster Weise wirklich aussagekräftig, noch ist er für den Leser nachvollziehbar (mit Video sähe es anders aus), aber es war grundsätzlich als kleiner Test gedacht um einen ungefähren Anhaltspunkt zu bekommen. Das was sich dabei halt herausgestellt hat war, dass die WPF Lösung auf jeden Fall schneller implementiert war und zusätzlich noch die Möglichkeit der Customization bot, d.h. das Aussehen konnte vollständig angepasst werden. Bei der WinForms-Anwendung: Niete.
Das spricht dann schon wieder eine deutlichere Sprache. Kürzere Implementierungszeit und höhere Anpassbarkeit. Schon eine nette Sache.
Interessant wäre nun der direkte Vergleich in einer größer angelegten Anwendung. D.h. mit einer Implementierungszeit von mehr als 5 MD. Wird sich in der Realität zwar vermutlich nicht spielen, aber durchaus ein interessantes Experiment. Denn gerade auf diesem Gebiet gibt es zahlreiche Spekulationen, wodurch natürlich viele Interessierte verunsichert werden und somit lieber die Finger von dieser Technologie lassen.