Der Aufwand so einer Portierung hängt immer davon ab, wie gut/stark die Trennung der einzelnen Schichten ist.
Ein Smartphone hat z.B. einen kleineren Bildschirm als ein Desktop-System und die erwartete Bedienung kann erheblich abweichen (Funktionstasten/Shortcuts gibt es auf den Mobile Devices nicht). Also kann es auf eine völlig andere
GUI hinauslaufen.
Der Data-Layer (Speichern der Daten) kann sich auch erheblich unterscheiden. Ein Desktop-System ist idR als
always inhouse connected zu betrachten, ein Smartphone eher als
maybe connected from anywhere. Darum ist es bei einem Desktop-System nicht tragisch, wenn es hier eine direkte Verbindung zur Datenbank gibt. Für ein Smartphone aber die Datenbank zum Internet zu öffnen gleicht einem
dance with the devils. Somit benötigt man hier eine weitere Schicht (z.B. einen REST-Server), die einen einigermassen sicheren Zugang zu den Daten bietet. Auf dem Smartphone selber sollte man die benötigten Daten zwischenspeichern, wenn die Funktion auch offline funktionieren soll.
Die Logik-Schicht ist hingegen bei beiden Systemen gleich ...