App vs. Web App

Meine Überlegungen zu App vs. Web App finden Sie hier in einer Tabellenübersicht. Welche Lösung zur Anwendung kommen kann, hängt natürlich von den Anforderungen und vorhandenen Know How's des Auftraggebers ab. Das Unternehmen besitzt gute Kenntnisse zu allen Lösungen.

Tabelle: App vs. Web App

Begriffsbestimmungen

App

Die App (von der engl. Kurzform für Application bzw. Programm) ist eine Software für Smartphones (z.B. iPhone). Eine App wird mit einer SDK (Software Development Kit) des jeweiligen Herstellers entwickelt. Verkauft bzw. vertrieben wird eine App über die App Store's der Anbieter. In der Regel wird eine App nativ im Binärcode ausgeführt. Dadurch ist die App nicht mehr plattformunabhängig. Für jede Zielplattform ist eine spezielle App zu entwickeln. Bei iOS von Apple muss in Objective-C/C/C++ und bei Android muss in Java programmiert werden.

Web App

Eine Web-App (Web-Applikation) ist ein Computer-Programm, das i.d.R. auf einem Webserver ausgeführt wird, wobei eine Interaktion mit dem Benutzer über einen Webbrowser erfolgt. Bei Smartphones wird aber immer mehr mit sogenannten RIA's (Rich Internet Application) gearbeitet. Diese bieten eine JavaScript-API, die das Look&Feel der jeweiligen Smartphones nach empfinden. Die bekanntesten RIA's für Smartphones sind jQuery Mobile oder Sencha Touch. Der Hauptvorteil der Web App's sind deren Plattformunabhängigkeit. Sie laufen auf den iPad, iPhone, Android-Handys, Android-Tablets, Blackberries und demnächst auch auf den neuen Nokias. Man ist auch App Store-unabhängig und die Entwicklung kann mit HTML5-Browsern (Safari, Chrom, IE9) erfolgen. D.h. sie laufen auch auf Desktops mit diesen Browsern. Geringe Datenmengen lassen sich auch lokal im LocalStorage (HTML5-Standard) speichern. Ein gravierender Nachteil ist allerdings, serverseitig wird etwas benötigt, was die Webseiten- und das Datenmanagement übernimmt. Eine eigene Domain wäre vom Vorteil. Die serverseitge Programmierung erfolgt dann mit PHP, Java (Tomcat), JavaScript (nodes.js) oder Delphi (Datasnap bzw. Delphi on Rail). Der Datenaustausch erfolgt über JSON.

Hybride App

Eine Hybride App ist von der Basis her eine Web App. Sie besitzt aber native Schnittstellen zum Smartphone. Dazu dienen Bibliotheken wie PhoneGap oder QuickConnect. Diese Applikationen können dann über die App Store's vertrieben werden.

Eine Übersicht über alle verfügbaren Bibliotheken finden Sie unter:
⇒ Wikipedia: Multiple Phone Web Based Application Framework
Diese Übersicht besitzt leider einige Lücken.

Zum gleichen Thema gibt es noch 2 gute Bücher:
⇒ iPhone Apps mit HTML, CSS und JavaScript von Jonathan Stark
⇒ Dynamische iPhone-Anwendungen entwickeln von Lee S. Barney
Das erste Buch behandelt das Arbeiten mit PhoneGap und das zweite Buch das Arbeit mit QuickConnect.