| 

.NET C# Java Javascript Exception

3
Hallo,

ich würde gerne in die App-Entwicklung für (Android, iOS, Blackberry, ...) einsteigen und hab mich schon beinahe auf die Entwicklung mit PhoneGap festgelegt. Doch bevor ich anfange, mich damit näher zu beschäftigen, wollte ich hier mal nachfragen, wie ihr eure Apps entwickelt und welche Erfahrungen ihr gemacht habt, bzw. ob ihr ein Framework oder Ähnliches empfehlen könnt.
Von PhoneGap hab ich gehört, dass es sehr langsam sein soll, hab aber nirgends vernünftige Vergleichstests oder -diagramme gefunden. Welche Alternativen gäbe es eigentlich zu PhoneGap?
Ein Arbeitskollege hat mir z.B. Xamarin empfohlen.
Ich weiß, dass es nicht die eine ultimative Lösung gibt, würde aber gerne auch eure Erfahrungen und Empfehlungen lesen.
28.04.2014
Smartin 35 5
2 Antworten
2
Wenn du plattformunabhängig und trotzdem relativ performant entwickelt möchtest dann guck dir mal MoSync (http://www.mosync.com/) an.

Ansonsten:
http://www.quickconnectfamily.org/qc_hybrid/
http://rhomobile.com/products/rhodes/
http://www.appcelerator.com/

Beste Grüße
29.04.2014
MRae 259 1 7
MRae 259 1 7
2
Diese Frage treibt viele Entwickler um.
Nicht ganz einfach ist die Beantwortung der Frage, weil man nicht genau weiß, wohin die Entwicklung zur Zeit geht.
Es hängt auch davon ab, wer Dein Auftraggeber ist und welche Ansprüche er hat.
Wer ist die Zielgruppe der Anwendung und welche Ansprüche hat sie?

Wir Entwickler wollen natürlich am liebsten nur einmal programmieren und den Code dann auf allen Plattformen ausführen?
Frameworks wie Phonegap helfen hier.
Ist die Entwicklung dann aber schneller, als wenn man native Anwendungen erstellt?
Muss man sich nicht doch in viele plattformspezifische Dinge einarbeiten und durch spezielle Anpassungen den Code verändern.
Kostet dies dem Auftraggeber wirklich weniger?
Missfällt dem Anwender nicht die plattform-fremde Usability?

Zur Zeit werden häufig nur IOS und Android als Zielplattformen ernsthaft wahrgenommen. Wie sieht es aus, wenn Windows Phone und WinRT weiter zusammenwachsen und als Zielplattform interessant werden?
Ist dann die Entwicklung mit Frameworks wie Phonegap immer noch zielführend?

Meine persönliche Einschätzung:
Als NET Entwickler liegt mein Schwerpunkt auf C#. Bis vor kurzem war ich nicht mehr sicher, ob ich nicht mit Microsoft auf dem sinkenden Schiff sitze, zumal MSFT uns NET Entwicklern keine ernsthaften Signale in Richtung C#/XAML/NET mehr gesendet hat.

Seit dem Wechsel an der Spitze von MSFT und der letzten BUILD Konferenz gibt es jedoch Rauchzeichen.
- MSFT unterstützt offiziell Xamarin als plattformübergreifende Entwicklungsplattform. (Bis vor kurzem hieß es bei ZDNet noch, dass MSFT Xamarin gar kauft)
- WinJS/HTML5 werden nicht mehr von MSFT in den Vordergrund geschoben.
- MSFT erweitert portable Klassenbibliotheken um Xamarin Portabilität
- MSFT unternimmt Riesenschritte in Richtung Zusammenführung von Windows Phone und WinRT, was die Entwicklung in den nächsten Monaten vereinfachen wird.
- Architekturpattern zur Trennung von View und Logik halten auch langsam bei Xamarin Einzug. Auch MSFT Teams wie das Practises and Patterns Teams gehen langsam in diese Richtung.

Vor ein paar Monaten hätte ich gesagt, ja, Phonegap ist die Wahl für plattformübergreifenden Entwicklung.
Nun bin ich davon überzeugt, dass für NET Entwickler Xamarin die Zukunft ist.
Für kleinere Entwickler sind die Xamarin-Kosten allerdings sehr hoch, vor allem wenn man auf das Xamarin Visual Studio Plugin setzen will, das zur Zeit aber auch noch ein wenig buggy ist.

Bisher musste man bei Xamarin auf Basis von Shared Code arbeiten. Analog hat man früher für WPF und Silverlight parallel entwickelt. Man verlinkt Code in mehreren Projekten und kompiliert dann den Code unterschiedlich.
Die aktuell von MSFT promoteten Universal Apps gehen auch in diese Richtung.
Dies ist ok, aber noch nicht optimal.

Aber die Entwicklung geht ganz klar zu portablen Klassenbibliotheken (PCLs). Wenn Xamarin dann noch bessere GUI Designer anbietet, dann kann man fast komplett den C# Code auf allen Plattformen wiederverwenden und per Binding an die unterschiedlichen Views anhängen.

Also mein Vorschlag: Xamarin und Visual Studio
29.04.2014
judgy 3,0k 1 1 8
Ja, Xamarin gefällt mir schon auch sehr gut, aber die Nachteile sind leider auch nicht zu leugnen (kein Blackberry, kein Windows-Phone, ..., sehr teuer). Aber vielen Dank für den sehr interessanten Ausblick. Vielleicht wird meine Wahl ja doch noch auf Xamarin fallen.
Smartin 29.04.2014
Wieso kein Windows Phone? Du erzeugst in Visual Studio eine Solution mit mehreren Projekten: IOS, Android, Windows Phone, Windows Store Apps. Die Klassen/Dateien verlinkst Du in den unterschiedlichen Projekten oder verwendest PCLs (Portable Class Libraries). IOS und Android kompilierst Du dann mit Xamarin und WP und WinRT Apps normal unter Visual Studio. Bis auf die View kann man fast alles sharen.
Blackberry soll auch gehen, hab ich neulich in der UG in einem Vortrag gehört.
judgy 29.04.2014
Ah super, vielen Dank. Also wenn Blackberry auch geht, dann wäre das schon echt eine super Lösung. Bleibt nur noch der hohe Preis, aber mit irgendwas müssen die ja auch ihr Geld verdienen.
Smartin 29.04.2014

Stelle deine Phonegap-Frage jetzt!