Vergleich von Mobile Frameworks - Cross Platform App Development

27.01.2014

vergleich-html5-frameworks-icon

Neuer Artikel zum Vergleich Cross Plattform Frameworks: Cross-Plattform Entwicklung 2020: Flutter, React Native und Xamarin im Vergleich
Frameworks zur App Entwicklung erfreuen sich steigender Beliebtheit. Kein Wunder: konnte man in Pionierzeiten mit einer iOS App noch den Großteil der mobilen App Nutzer ansprechen, ist nun Android mindestens ebenso bedeutsam und auch Windows Phone verbucht Zuwächse. Es lässt sich also nicht vermeiden, ernsthaft gemeinte Apps für mindestens zwei mobile Betriebssysteme zu entwickeln. Ein Framework, das es erlaubt die App einmal zu programmieren und dann in verschiedene Betriebssysteme nativ zu transformieren, erspart also eine Menge Arbeit.

Die Frage, welches Framework "das Beste" zur Entwicklung von Cross Plattform Apps ist, lässt sich dabei nicht absolut beantworten. Wir stellen die beliebtesten Frameworks vor und geben Ihnen einen tabellarischen Überblick mit Links zu den nackten Fakten. Schließlich vergleichen wir diese und erläutern deren Stärken und Schwächen und zeigen auf, für welchen Nutzertyp sich welches Framework am besten eignet.

 

 

Die beliebtesten Frameworks zur Cross Platform App Entwicklung

Mit Google Trends lässt sich schnell ermitteln, welche Frameworks zur Cross Plattform Entwicklung die beliebtesten sind. Nachfolgend die Trendgrafik für die Jahre 2010-2014.

vergleich-frameworks-cross-platform-app-development

 Quelle: Google Trends (Link zum aktuellen Cross-Platform Framework-Vergleich bei Google Trends)

 

jQuery Mobile steht in dieser Übersicht allerdings außen vor, weil es ein reines JavaScript Framework ist; sich also damit keine nativen Apps programmieren lassen.

Ansonsten ist offenbar Phonegap weiterhin das am weitesten verbreitete Cross Plattform Framework, gefolgt von Sencha. Durchaus brauchbare Alternativen, wie etwa Corona oder Appceletator (Titanium Mobile) werden im Verhältnis deutlich weniger gesucht, obwohl auch diese Ihre Stärken haben.

 

 

Tabellarische Übersicht der Cross Platform Frameworks

C++ Frameworks

Framework Leistungsumfang Sprache Links, Tutorials Preis/Lizenz
Corona Framework mit eigener Objective-C ähnlicher Sprache und weitreichenden APIs z.B. für Physik, Sprites, Animation, Social Media Integration uvm.

Lua (ähnlich Objective C)

Corona installieren

Corona Tutorial
Lua API Reference

trial/subscription

 

HTML5 / JavaScript Frameworks

Framework Leistungsumfang OS Links, Tutorials Preis/Lizenz
Sencha Touch HTML5 Framework mit Drag&Drop Visualisierungen iOS, Android, BlackBerry, Kindle Fire, web   ab $995
Appcelerator Titanium JavaScript basierende Plattform mit der Cross Browser Apps programmiert werden können iOS, android, web Appcelerator Tutorial "Pizza" Test kostenlos
Preis auf Anfrage
PhoneGap HTML5/JS Framework mit Funktion zur Einbettung in native Apps iOS, android, BlackBerry, Windows Phone, Bada, Symbian, web   Apache License (kostenlos)

 

 

Die HTML5 Cross-Plattform Frameworks im Vergleich

Appcelerator Titanium Mobile

Um mit Titanium Mobile zu programmieren, ist es zunächst notwendig, die Entwicklungsumgebung derjenigen Betriebssysteme zu installieren, für die eine native App entwickelt werden soll (siehe "Quick Start Guide: Entwickeln von nativen Applikationen mit Titanium"). Während des Entwicklungsprozesses wird aber fast ausschließlich in Titaniums SDK, welches auf Python basiert, gearbeitet. Das läuft über Titanium Studio, die Eclipse basierende IDE (Integratet Developer Environment) des Frameworks.

Bei der Erstellung einer App kann dadurch auf alle Hilfsmittel der nativen Entwicklung, wie Code-Completion und Debugging zurückgegriffen werden.

Zum Schluß wird die App kompiliert, technisch wird dabei der JavaScript Code in den nativen Code je nach mobilem OS eingefügt und zur Laufzeit ausgeführt. Die Titanium API sorgt schließlich dafür, dass alle Objekte, die der Programmierer in JS angelegt hat, eine Entsprechung im nativen Code bekommen.

Damit ist fast alles möglich, was auch direkt per nativem Code erreichbar wäre - allerdings derzeit nur in iOS und Android sowie als hybride Web App.

 

Herstellerangaben zum Titanium Mobile Framework:

  • 70% schneller als die Entwicklung mit Objective-C oder Java (bei Entwicklung für iOS UND Android...)
  • Eine einzige Plattform zur Entwicklung für iOS, Android und HTML5 (hybride Apps)
  • Unbeschränkte Erweiterbarkeit
  • Unterstützt 5000+ native APIs
  • Läuft mit JavaScript

Appcelerator hat auch einen relativ objektiven und sehr ausführlichen Vergleich zwischen Titanium Mobile und Phonegap veröffentlicht.

 

Phonegap

Phonegap ist vielleicht deshalb das erfolgreichste Framework, weil es beides bietet: Einerseits einen reinen HTML5 + JS Ansatz, der Webentwickler sehr erfreut und auf der anderen Seite Zugriff auf fast alle Hardwarefeatures eines Smartphones, wie Accelerometer, Kamera und Geolocation (siehe Cordova API Referenz).

Der Programmierer kann daher mit einfachsten Mitteln (einem HTML-Editor und einem Browser mit Code-Inspector) eine Website entwickeln. Das fertige Produkt wird dann in eine native Hülle gebettet, wo dieser Code in einer Web-View ausgegeben wird. Technisch gesehen handelt es sich also bei diesem Ansatz eher um eine Website, die über eine JavaScript Bridge mit dem nativen Wrapper kommuniziert.

Das Phonegap Framework ist daher sehr klein und einfach und die perfekte Wahl für überschaubare Projekte. Wer aus der Web-Entwickler Szene kommt und Dreamweaver nutzt kann sich zudem über den "Kauf" von Phonegap durch Adobe freuen, der weitreichende Funktionen des Ganzen seit CS6 integriert.

Die Probleme beginnen jedoch, wenn man dem Framework etwas mehr abverlangt. Die scheinbar kleinste Hürde ist schon ein großer Stolperstein: das User Interface. Das UI muss in HTML gebaut werden, kann also kein natives UI sein und es mangelt ihm daher an der Dynamik flexibel integrierter Elemente.

Auch auf anderes Handwerkszeug aus der nativen Entwicklerkiste, wie etwa eine ausgeklügelte Table-View über die man die Darstellung von Daten einfach und performant organisieren kann, muss man daher in Phonegap abschreiben.

 

Neuer Artikel zum Vergleich Cross Plattform Frameworks: Cross-Plattform Entwicklung 2020: Flutter, React Native und Xamarin im Vergleich




Verwandte Artikel