![]() |
Auswirkung der Einführeung von WPF durch Microsoft
Hallo zusammen,
aus diversen Quellen ist zu erfahren, dass MS die MFC (microsoft foundation classes) zugunsten von WPF (windows presentation foundation) aufgeben will. Hat das eigentlich (jetzt oder später) dann auch Auswirkungen auf Delphi ? |
AW: Auswirkung der Einführeung von WPF durch Microsoft
Ausser auf Delphi 8 wohl auf keine mir bekannte und künftige Version. Es wird entweder direkt mit der Windows-API gearbeitet (VCL) oder die Oberfläche wird als Image komplett gerendert und das OS-Verhalten simuliert (FMX).
|
AW: Auswirkung der Einführeung von WPF durch Microsoft
WPF ist inzwischen doch schon wieder Schnee von gestern. Aktuell ist WinRT mit HTML5 das neue heiße Ding. Meine Prognose: Wird in ein paar Jahren auch keiner mehr drüber reden, genau wie bei WPF und WinForms zuvor, während es die gute alte WinAPI dann immer noch geben wird. ;)
MFC ist nur ein Wrapper für die WinAPI (wie die VCL), auf Delphi hat das genau gar keine Auswirkungen, wenn die nicht mehr weiterentwickelt wird. Wird inzwischen wahrscheinlich auch einfach ausgereift sein, weshalb es schlicht keinen Grund gibt, da noch weiterzuentwickeln. Die bestehende MFC verschwindet dadurch ja nicht. Und die WinAPI schon gar nicht. |
AW: Auswirkung der Einführeung von WPF durch Microsoft
Zitat:
|
AW: Auswirkung der Einführeung von WPF durch Microsoft
... erstmal Danke für Eure Ausführungen.
Hintergrund ist ein möglicherweise geplantes Update bei meinem Arbeitgeber. Da muß ein ca. 200000 Zeilen Delphi 6 Programm modernisiert werden. Ich versuche mich da in jeder Hinsicht vorab zu informieren, da die Modernisierung wohl für die nächsten paar Jahre Bestand haben muß. |
AW: Auswirkung der Einführeung von WPF durch Microsoft
Definiere Modernisieren!
Modernisieren kann von "muss schöner aussehen" wo evtl. ein Update auf XE 8 + Einsatz von Themes reicht bis "sollte als Webanwendung laufen" wo man vermutlich alles wegschmeißt und sich überlegt ob man mit Java/.NET/(nur der vollständigkeithalber) PHP die Anwendung neue Entwickelt. |
AW: Auswirkung der Einführeung von WPF durch Microsoft
Modernisieren heißt in disem Fall weg von Delphi 6. Das macht bei mir unter WIN7 bzw. WIN8
merkwürdige Dinge. Eine Anwendung im Browser ist (wohl erstmal) nicht geplant. |
AW: Auswirkung der Einführeung von WPF durch Microsoft
Jetzt kann man sich überlegen, was eher wegfällt: Win32/Win64 oder WPF und wie hoch der Aufwand ist zur ein oder anderen Seite. Wenn .NET, dann würde ich gleich zur Universal App greifen
|
AW: Auswirkung der Einführeung von WPF durch Microsoft
Der Vorteil bei einer Portierung von Delphi 6 auf eine aktuelle Delphi Version (z.B. XE8) ist natürlich, daß der Source weitestgehend übernommen und im laufenden Betrieb refaktorisiert und verbessert werden kann. Gerade wenn ständig an dem Programm gearbeitet wird ist das ein unschätzbarer Vorteil.
Vor einem Umstieg auf ein komplett anderes System sollte man sich gut überlegen wie lange man wohl brauchen wird, um diese 200000 Zeilen Delphi-Code in das neue Ziel zu überführen. Ist irgendwo im Detail beschreiben, was diese Zeilen aktuell genau tun? Oder gibt es jemanden, der das aufschreiben könnte - also quasi ein Lastenheft erstellen, das als Basis für eine Neuprogrammierung brauchbar ist und alle Grenzfälle abdeckt? Meine Erfahrung zeigt, daß dies eigentlich eher selten der Fall ist. In den Fällen, wo solche Aufgaben an mich herangetragen wurden, war die Umstellung meistens schon fertig, bevor die Kollegen der C#- und Java-Fraktionen überhaupt eine belastbare Aufwandsschätzung abgeben konnten. |
AW: Auswirkung der Einführeung von WPF durch Microsoft
@Uwe Raabe
... ja so jemanden gibt es durchaus :), das Programm ist von mir selber im Laufe der letzten Jahre entwickelt und immer mehr erweitert worden. Ich persönlich würde natürlich bei Delphi bleben wollen, aber ich muß auch Alternativen und ihre Konsequenzen aufzeigen. Das Ganze bekommt noch etwas mehr Dynamik, durch die Tatsache, daß ich in wenigen Jahren mein Arbeitsleben beenden werden. Und dann muß das Programm (und es ist nicht nur diesese eine große Programm) weiter gepflegt werden. Gibt es eigentlich irgendwo Abschätzungen über den Aufwand einer Umstellung z.B. auf C#, so in der Art x Stunden pro 1000 Zeilen Programmcode? |
AW: Auswirkung der Einführeung von WPF durch Microsoft
Es gibt Statistiken die besagen ein Entwickler schafft über den Lebenszyklus einer Anwendung im Schnitt 10 Zeilen (Production) Code / Tag. Jetzt das große ABER: Das gilt wie gesagt im Schnitt über den Lebenszyklus der Anwendung. Am Anfang ist es mehr, das nimmt dann gegen später immer mehr ab.
Ich würde für die Init-Phase eines reboots grob mit 100 LOC / Tag rechnen. Dann gibt es da noch einen einzukalkulierenden Faktor: Pascal ist eine Sprache die sehr sprechend ist. Man braucht da gegenüber C# ein paar Zeilen mehr Code. Zudem bietet .NET an bestimmten Bereichen (z.B. ORM) mehr, das man mit weniger Code nutzen kann und nicht selber schreiben muss. Ich würde grob einen Faktor von 0.7 ansetzen, was aus einer 200.000 Zeilen Delphi-Anwendung vermutlich grob eine 140.000 Zeilen C#-Anwendung macht. Will heissen 140.000 / 100 LOC/Tag macht ca. 1400 Entwicklertage (bzw. 5,6 Personenjahre) Aufwand für einen kompletten Re-Write in .NET (Java ist da aber ähnlich). So aus dem Bauch raus. |
AW: Auswirkung der Einführeung von WPF durch Microsoft
Zitat:
|
AW: Auswirkung der Einführeung von WPF durch Microsoft
Aus beschriebenen Aufwand von Phoenix würde ich dann folgendes machen: Wenn sich niemand findet (Du ausgenommen),
der das gleich mit einer anderen Plattform neu entwickelt, würde ich das ganze mit einem aktuellen Delphi nochmal frisch machen, dann kommt man nochmal gut 10 Jahre mit hin. Genug Zeit, um sich nach Alternativen umzuschauen oder über eine Neuentwicklung schlau zu machen. |
AW: Auswirkung der Einführeung von WPF durch Microsoft
Zitat:
![]() Das ganze ergibt sich im Summe grob daraus, das man wenn man Code produziert meist recht viel produziert (deswegen ist der Wert gefühlt viel höher), aber dann wieder Tagelang Bugs jagt ohne eine einzelne Zeile zu produzieren, Doku schreibt, etwas nachzieht, etwas ausprobiert, etwas lernt, code refactored (gibt meist minus-Zeilen :) ) etc. und das sind über einen größeren Zeitraum eben am Ende sehr viele Tage an denen da was sehr kleines nahe bei 0 oder ggf. sogar kleiner steht und die ziehen den Schnitt gewaltig runter. |
AW: Auswirkung der Einführeung von WPF durch Microsoft
Zitat:
Zitat:
Da sind schon ganz andere gescheidert (u.a. MS mit Vista wo vieles unter .NET neu entwickelt werden sollte bis jemand die (Projekt-)Reisleine gezogen hat). |
AW: Auswirkung der Einführeung von WPF durch Microsoft
Neu auf eine andere Sprache um zu stellen ist ja nicht nur der einfache Code-Rewrite...
ggf. kann man die neue Sprache noch nicht so aus dem FF und ggf. will man auch Teile umprogrammieren. 100 LOC/Tag - Kann man auch nicht Pauschal sagen... Da halte ich gar nix von. D6 -> XE8 kann je nach Code schon aufwendig genug sein. Und was möchte man noch gerne machen? - Umstellen auf MVVM - Umstellen auf FMX - Umstellen auf einen neue Datenbank - weg von Komponente XY - Nutzen der "Parallel Library" Kann ich ggf. einfach meine Logic aus D6 in eine DLL verschieben und muss nur Teile neu machen? Viele Faktoren... Mavarik |
AW: Auswirkung der Einführeung von WPF durch Microsoft
Zitat:
![]() |
AW: Auswirkung der Einführung von WPF durch Microsoft
Danke für alle Beiträge, damit habe ich schon mal Material für meine Argumentation.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:07 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz