Thema: Delphi Android Apps mit Delphi

Einzelnen Beitrag anzeigen

BoolString

Registriert seit: 2. Feb 2009
Ort: Varel
70 Beiträge
 
RAD-Studio 2009 Pro
 
#12

AW: Android Apps mit Delphi

  Alt 17. Jun 2011, 23:13
@mkinzler:
Zitat:
Ein bestehendes Projekt wird sich wohl nicht einfach 1:1 portieren lassen. Das hat verschiedene Gründe:
-Die Plattformen sind verschieden
-Die VCL gibt es nur für Windows
-Die Architektur von mobilen Plattformnen ist anders
Das die Plattformen verschieden sind ist klar. Die Geschichte mit der VCL ist auch soweithin klar; für die meisten Elemente gibt es ja aber in den verschiedenen Sprachen Äquivalente. Ich erinner mich grob, daß Borland bei seinen Compilern erst in eine Zwischenschicht übersetzt hat/haben soll, damit man Executables aus Delphi & C Projekte z.B. mit dem gleichen finalen Compiler aus der selben Zwischenschicht erzeugen konnte. Dies wäre ja ein Ansatz, daß man vielleicht eines Tages auch auf andere Zielplattformen spekulieren kann.
Die Architektur ist auch ein wichtiger Punkt. Wenn die eigentlich relevante Programmlogik allerdings universell gekapselt ist, dann würde ich darauf setzen, daß so etwas 'mit vertretbarem Aufwand' möglich sein könnte.

@CCRDude:
Zitat:
Ich glaube, "vertretbar" hängt da extrem stark havon ab, wie gekapselt Du programmiert hast. Sind Funktion und GUI ordentlich voneinander getrennt (gerade Delphi verleitet ja zum Gegenteil)? Ist die Funktionalität entsprechend gekapselt? Beispiel: alle Zugriffe aufs Internet nicht direkt per Indy, sondern in einer platformabhängig austauschbaren Zwischenschicht? Sind direkte API-Calls ebenfalls gekapselt?

Dann lässt sich ganz unten eine Schicht austauschen, und oben kommt eine neue GUI drauf, aber das, was richtig Zeit gekostet hat, die wirkliche Programmlogik, geht problemlos rüber.

Anderenfalls ist neuschreiben vermutlich fast schneller, bzw. ordentliches Trennen, um es in der laufenden Entwicklung zu machen.
Die Vertretbarkeit ist natürlich immer eine Sache der Programmierung. Ich habe in den letzten 10 Jahren sicherlich einiges dazugelernt, wie man entsprechende Geschichten trennt, obgleich Programmierung für mich immer nur Mittel zum Zweck war und ich das niemals hauptberuflich gemacht habe. Aus dem Grund hab ich da sicherlich auch Grenzwissen, was deine angemerkten Punkte betrifft. Ich bin eh dabei das ursprüngliche Projekt neu aufzusetzen, dan es sich dabei um eine zu schnell gewachsene Software handelt, die ursprünglich nur einen mystishes Datenformat in Tabellenform bringen sollte. Daraus sind dann aber schnell neue Wünsche und Forderungen entstanden die mit dem initialen Design einfach nicht mehr sauber machbar waren, aber entsprechende Workaround erforderten.

Ich habe (inzwischen) eigentlich alle (z.B.) GUI-Datenformulare von der entsprechenden Funktionaltät getrennt und in eigenen Units ausgelagert. Trotzdem gibt es immer noch Bereich (wie du ja schön angemerkt hast ) wo solche Dinge icht immer ganz trennbar sind.
Es fängt damit an, daß ich einen Datenmanager habe, der sämtliche geladenen Datensätze und die Zugriffsrechte durch einzelne Module steuert. Hier fängt es ja schon an, wie entsprechende TObjects auf einzelne Plattformen protierbar wären.

Internetzugriffe, etc. hab ich ja eigentlich gar nicht. Bei mir geht es um die Verarbeitung von Datensätzen, die je nach Format aus ASCII-Plain bis Binär in eine Matrixstruktur übertragen werden und dann Grundlage für die weiteren Verarbeitungen werden um strukturaufdeckende oder strukturprüfende Verfahren anzuwenden oder geokodierte Formate zu erzeugen, die in entsprechenden marinen Visualisierungswerkzeugen weiterverarbeitet werden können.

Auf Grund diverser Anfragen würde es mir im ersten Durchgang ja schon ausreichen, wenn ich zügig eine Linux und Mac Variante anbieten kann. Die ursprüngliche Software (obgleich schon zum damaligen Zeitpunkt weder auf Logikdesign-, wie auf auf GUI-Ebene vertretbar) hat es immerhin geschafft im UNESCO Ocean Teachers Programm für freie Software gelistet zu werden. Ich sitz seit 2-3 Jahren daran endlich mal etwas zu stricken, was zeitgemäß ist; immer mal wieder ein paar Stunden. Und für diese Arbeit würde mich auch eine breitere Basis als Win-Only interessieren.

Jan
  Mit Zitat antworten Zitat