| 

.NET C# Java Javascript Exception

2
Ich habe mich in den letzten Wochen ziemlich ausführlich mit dem Thema Cross-Plattform-Entwicklung beschäftigt. Das ganze fing eigentlich damit an, dass ich in Erfahrung bringen sollte ob und wie sich die Kommunikations-APIs von MoSync in Java aufrufen lassen (Würde in unserem Projekt wirklich arbeit ersparen). Da aber hinter MoSync und auch hinter anderen SDKs ganz eigene Technologien stecken, bin ich zu keinem positiven Ergebnise gekommen.

Für mich stellt sich nun noch die Frage wie sich denn solche SDKs überhaupt im Einklang zu bestehenden Entwicklungen nutzen lassen? Da ich alle Cross-Plattform-Lösungen als Stand-Alone-Lösungen ansehe (ausgenommen Webanwendungen und Hybride Anwendungen), würde ich sagen dass dies nicht möglich ist. Da gibt es nur ein entweder nativ oder quasi-nativ (interpretiert).

Auch würde mich mal interessieren wann ihr denn jemanden den Einsatz solcher Frameworks empfehlen würdet? Ich persönlich sehe aufgrund technischer Nachteile und Abhängigkeiten keine ganz große Zukunft darin. Da bietet sich eher die Entwicklung von Webanwednungen an, die ja mittlerweile auch einige native Funktionalitäten ermöglicht. Außerdem ist der Markt für plattformübergreifede Lösungen (hybrid, interpretiert, cross-compilert) ja mindestens genau so fragmentiert wie der Markt für mobile Betriebssysteme selbst.

Wie sind eure Erfahrungen?
07.04.2011
MRae 259 1 7
MRae 259 1 7
Arbeite mich auch gerade in das Thema ein. Bin sehr auf Antworten gespannt.
Felix 07.04.2011
4 Antworten
2
Siehe auch hierzu folgendes Codekicker Thema und ggf. meinen Beitrag dazu.
07.04.2011
Logdog82 856 1 8
1
Ich bin vermutlich etwas am Thema vorbei, aber ich schreib mal trotzdem ein paar Erfahrungen. Ich entwickele unter anderem Client-Server-Anwendungen, die sowohl nativ auf Linux als auch auf Windows laufen. Von daher achte ich bei der Auswahl von Komponenten und Frameworks darauf, dass diese beides unterstützen. Dabei kann man dann zwar nicht alles einsetzen was der Markt hergibt, aber für die meisten Zwecke reicht es.

Allerdings ist das jetzt halt der PC-Bereich. Wenn jetzt die Clientanwendung auf Mobiltelefone portiert werden soll, wird es tatsächlich etwas eng, denn da gibt es noch nicht alles was ich brauchen würde.
07.04.2011
m.fuchs 1,8k 2 8
1
Das Thema Cross-Platform-Development ist heutzutage ziemlich heikel.
Als einzige Schnittstelle für Android, iPhone, iPad und Windows Phone 7 (und einige andere) gilt die Webentwicklung. Möchtest du also eine App anfertigen musst du diese "Quasi-Native" programmieren, was heisst, dass du HTML- bzw. PHP-Seiten mit Web Schnittstellen laden musst.
Diese heissen zum Beispiel UIWebView bei iOS. Damit kannst du lokale Webseiten laden und trotzdem das Gefühl einer echten Applikation den Usern geben.
Mit HTML und PHP kannst du so verschiedenste Funktionen in deine App einbauen ausserdem stehen dir Javascript sowie CSS zur Verfügung.
Es gibt dafür bereits Frameworks wie z.B. PhoneGap oder MonoTouch. Letzteres bietet auch eine Reihe von UI-Elementen, die dir zur Verfügung stehen.

Ein Bekannter hat sogar durch das einbinden von mehreren WebViews eine Kommunikationsmöglichkeit geschaffen, welche auf der geladenen URL basiert.
Baust du so eine Art TabBar die eine URL ladet mit Informationen welcher Button gedrückt wurde. Diese können dann die anderen WebViews auslesen und verarbeiten. Leider habe ich nicht mehr Informationen, aber das sollte dich zumindest auf den richtigen Weg leiten.

Fazit: Erkundige dich nach den Webtechnologien, die unterstützt werden. Durch HTML5- und CSS3
-Unterstützung der meisten Geräte kannst du auch echt wirkende Animationen erstellen.
24.05.2011
mavrick3 11 1
0
tja, ich entwickle "spezialanfertigungen", will heißen: jeder kunde bekommt ein maßgeschneidertes produkt.

wenige kunden (bei meinen kunden überhaupt noch kein einziger) wechselt das betriebssystem. auch die datenbank wurde noch nie gewechselt (weshalb ich persönlich für mich die arbeit mit o/r mappern für sinnlos halte).
07.04.2011
nabuchodonossor 1,3k 5
Hast Du auch die Tags der Frage gelesen? Wäre doch denkbar, dass selbst manche Deiner Kunden unterschiedliche Smartphone-OS im Einsatz haben oder unterstützen wollen?
Matthias Hlawatsch 07.04.2011
Macht natürlich nur Sinn, wenn der Kunde mehrere OS im Einsatz hat oder es sich um eine B2C Anwendung für nen AppStore handelt.
Felix 07.04.2011
@matthias: hast mich erwischt ...
nabuchodonossor 07.04.2011

Stelle deine Android-Frage jetzt!