Wobei Cooper bisher m.W. kein Produkt vom EM sondern von RO ist.
Stimmt. In welcher Form es tatsächlich auf den Markt kommt ist noch nicht ganz raus (oder zumindest habe ich davon bisher noch gar nichts gehört).
Wenn man
ernsthaftes Interesse an der Beta von Cooper hat, bitte mal eine Mail an jim at remobjects.com schicken. Er kümmert sich dann darum.
Zum Thema Portierung von Bestandsanwendungen:
In 99,999% aller Fälle macht das so gar keinen Sinn. Insbesondere mobile Geräte haben ganz spezielle Use-Cases und, und das ist vielleicht die wichtigste Einschränkung gegenüber Desktop-Anwendungen, a) nicht immer eine Netzwerkverbindung und b) vor allem noch begrenzte Ressourcen.
Zudem erfordert die Oberfläche von mobilen Geräten in aller Regel Berührungs- und Gestengesteuerte Interaktion (die kleinen Tablet-PC's mit Tastatur mal ausgenommen, die inzwischen am aussterben sind), und das lässt sich eigentlich nie auf bestehende Oberflächen mappen.
Das heisst eine Anwendung Mobil-Fähig zu machen bedeutet vor allem eines:
Die bisherige Anwendung mit einer sauberen Architektur versehen.
Dazu gehört, wenn man eine wie auch immer geartete zentrale Datenhaltung hat, diese in einen Application Server auslagern (Stichwort N-Tier Architektur) und die *ganze* Business-Logik aus den Forms in den Application Server umziehen. Das ganze Zeug muss Head-Less (ohne UI) laufen können, und das UI muss derart umgestaltet werden, dass es ausschliesslich ein bisschen Code beinhaltet um das UI zu steuern. Zwischen Backend und UI fehlt dann logischerweise der 'Kleber' (Glue-Code), den man wenn man alles richtig macht dann z.B. in Delphi mit dem MVC-Pattern relativ flott hin bekommt.
Im nächsten Schritt kann man dann die neuen mobilen Applikationen mit einem für die jeweilige Plattform spezifischen UI an den Application Server anhängen. Hier hat man dann zumindest mit .NET und Delphi Prism die Möglichkeit den Code für die Kommunikation mit dem Application Server und das Clientseitige Model zentral zu pflegen und muss das Model dann nur noch mit den jeweiligen
GUI-Toolkits auf die Geräte bringen.
Alles in allem: Ja, das ist ein massiger Aufwand. Wenn man den aber nicht betreibt und seine Altlasten für mobile Anwendungen Umbiegt holt man sich damit massive Probleme ins Haus deren Behebung dann a) viel aufwendiger ist als es gleich richtig zu machen und b) Seiteneffekte auf den Altcode hat der nochmal aufwand erzeugt und man um das zu vermeiden die Codebasis trennt und dann bei Änderungen c) doppelten / dreifachen / vierfachen (je nach Anzahl Zielplattformen halt) Pflegeaufwand hat.