Ich frage mich bei zunehmender Bedeutung des Internet immer mehr, ob es nicht sinnvoller ist, Anwendungen für mobile Geräte nicht als native Anwendungen, sondern als Web-Anwendungen umzusetzen. Dies hätte die Möglichkeit, Anwedungen browserbasiert und zudem geräteüberfreifend verfügbar zu machen. Lediglich Anwendungen, die gerätespezifische Funktionen verwenden, sollten weiterhin als native Anwendungen umgesetzt werden. Was meint ihr dazu? Wann entscheidet ihr Euch für native Anwendungen, wenn diese auch als Browser-Anwendungen umsetzbar sind?
Ich sage, dass Web-Apps immer zu empfehlen sind, da diese auch meist Platformunabhängig laufen können - native nicht. Außerdem finde ich auch die Programmierung von Web-Apps einfacher, man muss nur -das weit verbreitete- JavaScript benutzen anstatt eigene Sprachen, die man ggf. erst noch lernen müsste. Auch können viele native Aspekte mit PhoneGap in die "Web-Welt" geholt werden.
Einige Web-App-Frameworks:
Sencha Touch: Funktioniert nur mit WebKit-Browsern; HTML wird nicht benötigt, d.h. alles wird in JS programmiert.
Die meisten Vorteile sehe ich bei Web-Anwendungen. Es ist einfacher die Anwendung zu aktualisieren, sie ist kompatibel mit mehreren Betriebssystemen und wenn sowieso eine Datenverbindung erforderlich ist, gibt es kaum Vorteile für eine Native-Anwendung. Damit ist auch der entscheidende Nachteil der Web-Anwendung genannt: Es wird eine Datenverbindung vorausgesetzt. Im Gegensatz dazu kann eine Native-Anwendung offline benutzt werden und das kann je nach Anwendung sehr sinnvoll sein. So benötigen kleine Tools meist keine Datenverbindung. Auch eine Offline-Navigation mit OpenStreetMap-Karten verwende ich häufig. Es kann auch sinnvoll sein, Daten zu erfassen und zu einem vom Nutzer definierten Zeitpunkt zu einem Server zu übertragen. Hier sind Native-Anwendungen notwendig.
Ne, du brauchst für das erste starten der Web-App eine Verbindung, dann wir sie in den Speicher geladen und beim nächsten Laden auch von da gespeichert(http://www.w3.org/TR/html5/offline.html).
Das funktionierte mit den von mir benutzten Anwendungen auf Android bislang nicht?!? Kann aber nicht sagen warum. Ich habe mir gerade deinen Link zu PhoneGap angesehen und das sieht sehr vielversprechend aus. Da muss ich meine Einschränkungen zu Web-Anwendungen zurücknehmen.
Bei allen Apps die über so etwas wie Suche -> Liste -> Detailansicht hinausgehen und erweiterte Anforderungen haben wird man mit den Web Frameworks irgendwann an eine Grenze stossen. Und wenn es nur so Themen wie anspruchsvolle(re) Grafik oder Offline-Modus sind. Hier kann man aber inzwischen mit HTML5 auch einiges erreichen. Zum anderen kann man nicht so etwas wie den App Store nutzen. Das kann ein Vorteil oder ein Nachteil sein ;-)
Am Ende muss man abwägen zwischen vorhandenen Skills, Ressourcen und konkreten Anforderungen an die Anwendung.