Ich habe bereits erste Erfahrungen unter C# und VS 2010 gemacht. Mir scheint aber zB die WPF zu komplex für diese Anwendung bzw. zu umfangreich. Die neue Anwendung soll zwar durchaus mehrschichtig werden, doch diese Schichten müssen nicht auf unterschiedlichen Servern laufen mit Lastverteilung und wasweissichnochalles.
- WinForms für die Präsentation
- ObjectPascal für die BusinessLogic
-
MySQL oder Interbase für die Datenhaltung
Und das ganze eben unter Prism.
Hat Prism eurer Meinung nach Zukunft? Kann man sich das leisten darauf zu setzen oder eben nur wenn man tonnenweise Pascal-Kode retten muß?
Ja, Prism hat Zukunft. Auch wenn Embarcadero irgendwann aus was für einem Grund auch immer sagt, sie vertreiben es nicht, so wird es danach einfach wieder von RemObjects vertrieben.
Aber mal so ein paar Vergleiche zwischen der Oxygene-Sprache in Prism und C#:
Aspektorientierte Programmierung kann C# nur mit viel Infrastruktur und komplizierten Post-Build-Prozessen. Oxygene hat das im Bauch.
Class Contracts ist auch so ein Thema: In C# ist das mehr oder weniger in .NET 4.0 im Framework so hingefrickelt. Aber richtiger Compiler-Support sieht anders aus (so wie in Prism).
Mal davon abgesehen, dass auch dieses Jahr wieder einige Features rauskommen, die C# so nicht hat und die da auch nicht abzusehen sind.
Technologisch / was die Sprachfeatures angeht ist man mit Prism auf jeden Fall weiter vorne dran.
Noch ein Vorteil: Die Business-Klassen die man mit Prism schreibt kann man sofern bedarf besteht mit Cooper dann auch in Java Bytecode compilieren. Die Frage ob .NET oder Java stellt sich also nicht mehr, die Sprache bleibt immer die gleiche: Oxygene.
Zu den Technologien:
Windows Forms ist schon seit Jahren abgekündigt und wird von MS nicht großartig weiter entwickelt. Das hält die Komponentenhersteller aber nicht davon ab hier immernoch kräftig weiter zu arbeiten. WPF ist genial, wenn man wirklich coole
GUI's bauen will - aber da sollte dann tatsächlich ein Designer ran. Ich habe noch kein WPF-
Gui von einem Nicht-Designer gesehen das taugt und nicht nach 'so würde ich es mit Windows Forms machen' aussieht