Unterschiede zwischen nativen Apps und Webapps

Entwickler von Websites stehen aufgrund der Verbreitung von Geräten mit kleinen Displays vor der Herausforderung, eine adäquate Website für diese Geräte bereitzustellen. Dabei sind vor allem folgende Techniken relevant.

  • Responsive Webdesign
  • Mobile Version der Webseite
  • Website als App

Unter Responsive Webdesign werden die Vor- und Nachteile der Technik sowie die Unterschiede zu einer mobilen Version einer Website erläutert. Für den Fall, dass man eine Website responsive erstellen oder eine bestehende umstellen möchte, stehen einige Tipps unter Umstellung einer Website auf responsive Design zur Verfügung.

In manchen Fällen kann es sinnvoll sein, die Website als App bereitzustellen. Hierbei können die folgenden Hauptmerkmale von Apps den Ausschlag für die Entscheidung geben.

  • Funktionieren ohne eine Internetverbindung
  • Können Daten auf den Clientrechnern speichern
  • Können Zugriff auf die Hardware der Geräte erhalten

Bei den Apps gibt es jedoch auch Unterschiede. Diese werden wie folgt unterteilt.

  • Webapps
  • Native Apps

Die Unterschiede zwischen Webapps und nativen Apps sind nachfolgend beschrieben.

Webapps

Webapps werden auch häufig Browserapps genannt, da sie im Grunde Websites sind, die in Browsern betrachtet und bedient werden. Somit sind sie plattformübergreifend und für das Funktionieren benötigt man lediglich einen Browser und man ist nicht von einem bestimmten Betriebssystem abhängig. Für die Entwicklung benötigt man keine weitreichenden Kenntnisse in höheren Programmiersprachen wie z.B. Java oder C. Für ein Webapp in minimaler Form reichen hauptsächlich normale Kenntnisse in HTML bzw. HTML5 aus. Eine Webapp kann natürlich mit der Programmiersprache JavaScript erweitert werden. Jedoch ist JavaScript eine clientseitige Scriptsprache und zählt nicht zu den höheren Programmiersprachen.

Die Hürden, um ein Webapp zu erstellen, sind daher im Vergleich zu nativen Apps sehr gering. Außerdem ist der Aufwand tendenziell geringer als bei nativen Apps und das wirkt sich wiederum auf den Preis aus. Webapps sind in der Regel schneller und kostengünstiger zu erstellen als native Apps.

Mit HTML5 und Local Storage ist es möglich, Daten auf den Clientrechnern zu speichern. Somit können sie lauffähig sein, selbst wenn keine Internetverbindung besteht. Damit sind bei Webapps zwei wichtige Merkmale nativer Apps gegeben. Es ist auch möglich, Daten mit dem Server zu synchronisieren, sobald eine Internetverbindung besteht.

Wird eine Webapp aktualisiert, steht das Update den Benutzern im Grunde sofort zur Verfügung, sobald sie eine Internetverbindung haben. So kann man entscheiden, wann die Aktualisierung für ein Webapp erfolgen soll und braucht nicht die Zulassung der Plattformen abzuwarten, auf denen native Apps bereitgestellt werden. Somit hat man eine gewisse Unabhängigkeit.

Native Apps

Die Technik, mit der native Apps entwickelt werden, hat wenig mit der von Webapps gemeinsam. Webapps werden mit HTML, CSS und JavaScript erstellt. Native Apps werden dagegen in höheren Programmiersprachen wie z.B. Java entwickelt. Das hat zur Folge, dass die Apps nur auf den Systemen funktionieren, für die sie entwickelt wurden. Native Apps, die für das iOS-System entwickelt wurden, können nicht einfach auf Android installiert werden. Sie sind nicht plattformübergreifend einsetzbar. Was sich zunächst als Nachteil erweist, kann jedoch auch ein Vorteil sein. Denn, so kann man bei der Entwicklung der Apps die Besonderheiten der jeweiligen Betriebssysteme berücksichtigen und sie dadurch performanter gestalten.

Außerdem hat man bei nativen Apps viel bessere Möglichkeiten, auf die Hardware der Geräte zuzugreifen. Das ist zwar bei Webapps mittlerweile auch möglich, jedoch nicht in dem Maße wie bei nativen Apps. Bei rechenintensiven Vorgängen läuft ein natives App performanter und kann den Benutzern ein Gefühl der Stabilität geben.

Das Speichern von Daten ist bei Webapps zwar auch möglich. Jedoch kann man das nicht mit der Speicherung von Daten bei nativen Apps vergleichen. Beispielsweise stehen bei Webapps nicht beliebige Mengen an Speicherkapazität zur Verfügung.

Beim Vertrieb und Vermarktung kann man die Vorteile eher bei nativen Apps sehen. Denn, diese werden in der Regel über Plattformen vermarktet, die die gesamte Vermarktung und die Bezahlung mit den Kunden abwickeln. Für diese Tätigkeit muss man zwar in der Regel einen prozentualen Anteil abgeben. Dafür ist die Anzahl der potenziellen Käufer wesentlich höher, als wenn man eine Webapp in Eigenregie vermarkten würde. Außerdem vertrauen viele Kunden eher den Apps, die von solchen Portalen heruntergeladen werden können, als bei unbekannten Websites.

Nachfolgend eine Grafik, in der einige Stärken und Schwächen beider App-Typen gegenüber gestellt sind, wobei das natürlich eine subjektive Einschätzung ist und die jeweilige Stellung abhängig von der zu entwickelnden App ist.

Unterschiede native Apps und Webapps

Eine Entwicklung ist klar abzusehen. HTML war früher eine reine Beschreibungssprache für elektronische Dokumente. Die Entwicklung hat jedoch einen gehörigen Schub bekommen und man kann den Eindruck gewinnen, dass die Zeitintervalle, in denen neue Entwicklungen veröffentlicht werden, immer kürzer werden. Hierbei ist ein klarer Trend zu sehen, dass bestrebt ist, HTML in Verbindung mit CSS und JavaScript dahingehend zu entwickeln, um auch komplexe Websites entwickeln zu können.