Native, Web und Hybrid Apps

Wenn man sich dafür entscheidet, Applikationen für Mobile Endgeräte zu entwickeln, so sollte man sich mit der Frage auseinandersetzen, um welche Art von Applikation es sich handeln wird. In diesem Artikel sollen die Unterschiede sowie die Vor- und Nachteile zwischen Native Apps, Web Apps und Hybrid Apps aufgezeigt werden.

Native Apps:

 

Bei dem Wort „Apps“ denken die meisten zuerst an Native Apps – Man findet diese in unterschiedlichen App Stores, wo sie zum Download bereitstehen und auf dem eigenen Smartphone oder Tablett installiert werden können. Das Programm läuft zur Gänze auf dem Gerät selbst und kann dessen Hardware nutzen, um seine Arbeiten durchzuführen.

Native Apps werden für eine bestimmte mobile Plattform bzw. für bestimmte mobile Geräte entwickelt. Daraus ergeben sich folgende Vorteile:

 

  • Die Programme sind schnell und zuverlässig.
  • Sie haben zugriff auf alle Komponenten und Eigenschaften des Geräts (zB Kamera, Mikrofon, Swipe Gestures, etc.)
  • Herausgeber haben die Möglichkeit „push-notification“ zu nutzen, um Kunden zB über neue Versionen zu informieren
  • Durch die Auslegung auf bestimmte Plattformen ist meistens das User Interface auf den verwendeten Geräten ideal konzipiert. Für den User wirkt die Anwendung harmonisch und stimmig.

 

Der größte Nachteil von nativen Applikationen ist jener, dass für jede Plattform eine eigene Implementierung notwendig ist. Ein Programm, welches für Windows Phones entwickelt wurde, kann nicht auf iOS oder Android Smartphones verwendet werden. Die Programme müssen in allen gewünschten Sprachen (ObjectiveC, Java, C#, ect.) erneut umgesetzt werden. Um mit nativen Applikationen möglichst viele Plattformen anzusprechen, müssen also einige Ressourcen aufgewendet werden. Um eine Umsetzung zu ermöglichen, sollte der Kostenfaktor durch die mehrmalige Implementierung berücksichtigt werden. Des weiteren benötigen Entwickler die nötige Erfahrung in unterschiedlichen Programmiersprachen, um die Apps in allen Sprachen zu implementieren.

 

Wenn es das Budget jedoch zulässt, oder man nicht unbedingt plattformunabhängig sein möchte, kann es sich durchaus lohnen, native Apps zu entwickeln.

 

 

Web Apps:

 

Web-Applikationen müssen nicht extra heruntergeladen und installiert werden, sondern werden wie gewöhnliche Webseiten in einem Browser geladen. Sozusagen stellen sie die mobile Version einer Webseite dar, die daher auch keinen freien Speicherplatz am Gerät selbst benötigt.

 

Vorteile von Web Apps wären:

 

  • sind Plattformunabhängig
  • ermöglichen eine einfache und schnelle Entwicklung
  • sind flexibel in der Anpassung
  • benötigen keinen eigenen Speicherplatz am Gerät
  • Updates bedürfen keiner expliziten Genehmigung

 

Die Benutzung von Features, welche das mobile Endgerät bereits mit sich bringt, ist hier sehr eingeschränkt. Weiters wird man bei der Benutzung von Web Apps immer eine bestehende Internetverbindung benötigen, damit das Programm korrekt laufen kann. Um plattformunabhängige Applikationen schnell und günstig umzusetzen, sind Web Apps jedoch möglicherweise die beste Wahl.

 

 

Hybrid Apps:

 

Diese Art von Applikation ist eine Kombination aus den zuvor beschriebenen Apps. Hierbei wird versucht, die positiven Eigenschaften der unterschiedlichen Formen herauszunehmen um möglichst effektive Apps zu erstellen.

Die meisten hybriden Apps bauen auf plattformunabhängigen Technologien, wie HTML5, CSS und Javascript auf. Ein kleiner Teil der Applikation muss jedoch auch in der jeweils spezifischen Programmiersprache entwickelt werden. Als Vorteil hierbei zu erwähnen wäre, dass die Eigenschaften der jeweiligen Geräte (wie zB. GPS und Kamera etc.) genutzt werden können.

Des Weiteren kann entschieden werden, ob man möglichst stark auf individuelle Plattformen eingehen möchte, oder die Flexibilität und Unabhängigkeit von Web Apps nutzen will.

Hybride Apps bieten also sehr umfangreiche Möglichkeiten der App Entwicklung.

 

 

Entwicklung:

 

Für Native Applikationen werden Entwicklertools und standardisierte SDK angeboten, welche relativ einfach dafür verwendet werden können, Programme zu entwickeln. Wie bereits erwähnt, muss dies aber stets für jede Programmiersprache extra geschehen.

Für Web Applikationen existieren keine standardisierten Software-Kits, sie sind allerdings relativ einfach und schnell zu entwickeln.

 

Für die Entwickelung von Hybriden Applikationen existieren bereits einige Tools, die bei der Umsetzung von Hybriden Apps hilfreich sein können und bei der Entwicklung der Apps unterstützen können.

BSc. Markus Painter-Schmid
Erstellt: 2016-12-05
von: BSc.  Markus Painter-Schmid
Stichworte: 

mobile, native app, web app, hybrid app