5 Arten von Apps einfach erklärt
Sie planen ein App-Projekt und möchten vermeiden mit der falschen Wahl des Anwendungstyps Geld zu verschwenden?
Dann wird Ihnen dieser Leitfaden bei der Entscheidung helfen welche Art von App für Ihr Vorhaben am besten geeignet ist.
Mit dem kostenlosen App Art Test können Sie zudem innert weniger Minuten herausfinden, welche App Art für Ihr Projekt am besten geeinget ist.
Web und Mobile App
Instinktiv denken wir beim Wort "App" an die Applikationen, die wir aus dem Apple App Store oder Google Play Store auf unser Gerät herunterladen und installieren können. Dabei handelt es sich um die sogenannten "Mobile Apps".
Daneben gibt es aber noch die "Web Apps". Das sind Anwendungen welche direkt im Browser vom Smartphone, Tablet oder PC laufen. Mit den aktuelleren Versionen von Google Chrome, Mozilla Firefox, Safari usw. können diese heutzutage einen sehr hohen Funktionsumfang abdecken und dienen somit je nach Einsatzgebiet als eine sinnvolle Alternative zur Mobile App.
Vereinfacht kann man die beiden App-Typen also folgendermassen unterscheiden:
Sowohl Mobile als auch Web Apps können aber noch spezifischer differenziert werden. Es gibt nämlich mehrere Möglichkeiten, wie diese aufgebaut und programmiert sein können.
Starten wir mit den Web Apps:
Einfache Web App
Blicken wir auf die Zeit zurück, bevor das Smartphone den Markt eroberte, so stellen wir fest, dass das Internet damals noch verhältnismässig wenig Interaktionsmöglichkeiten bot. Das lag bestimmt auch daran, dass damals nur wenige Personen Geräte wie Kamera, Mikrofon, GPS-Sensor und so weiter am Computer angeschlossen hatten. Da diese Hardware-Komponenten mit dem Smartphone plötzlich alle stets verfügbar waren und die Nutzung des Internets über das Mobiltelefon gleichzeitig zunahm, stieg auch die Nachfrage auf diese Sensoren und Funktionen über eine Website zuzugreifen. Unterdessen bieten die grossen Browser diese Möglichkeiten an.
Heute können viele Anwendungen direkt als Web App implementiert werden, wobei der grosse Vorteil der ist, dass sie beinahe hardwareunabhängig sind, solange eine aktuelle Version der gängigen Webbrowser darauf läuft. Auch das installierte Betriebssystem (iOS, Android, Windows, Linux, etc.) spielt keine Rolle.
Gestaltet man die Applikation responsive, also so, dass sich das Layout automatisch an die Bildschirmgrösse des benutzten Geräts anpasst, so kann sie sowohl auf Mobiltelefonen und Tablets sowie auch am PC genutzt werden.
Im Prinzip kennt man das ja bereits von den vielen Websites, denn Web Apps sind im Kern nichts anderes. Es handelt sich dabei lediglich um eine etwas interaktivere Form von Internetseiten. Daher können bestehende Homepages auch bequem um interaktive Features ergänzt oder gar zur Webanwendung umfunktioniert werden.
Somit haben wir auch schon die wichtigsten Vorteile einer einfachen Web App:
- Unabhängig von Hardware und Betriebssystem, solange ein aktueller Browser benutzt wird
- Bestehende Websites können bequem mit interaktiven Features ergänzt oder zur Web App umfunktioniert werden
Natürlich gibt es aber auch ein paar Nachteile. Zum Beispiel werden viele Funktionen, die man von Mobile Apps kennt noch gar nicht oder nicht vollständig unterstützt. Aber auch der Fakt, dass eine einfache Web App ohne aktive und stabile Internetverbindung nicht genutzt werden kann, ist ein Minuspunkt. Genau deshalb gibt es aber eine weitere Art von Anwendung im Netz:
Progressive Web App (PWA)
Diese etwas neuere Entwicklung basiert auf der vorher beschriebenen einfachen Web App. Dennoch gibt es ein paar wichtige Unterschiede, die der Progressiven Web App zu einem eigenen Kapitel in dieser Auflistung verholfen hat.
Der wichtigste Unterschied ist, dass PWAs auch ohne Internetverbindung funktionieren können. Dazu muss die App natürlich einmalig geladen werden, indem einfach die entsprechende Website aufgerufen wird. Optional kann die Web App auch auf dem Homescreen des verwendeten Geräts gespeichert werden, so dass es schlussendlich wirklich aussieht, als würde man eine gewöhnliche Mobile App starten. Dass die Benutzeroberfläche des Browsers bei einer vom Homescreen aus gestarteten PWA ausgeblendet wird unterstützt diesen Anschein zusätzlich.
Eine progressive Web App kann ausserdem auch Funktionen im Hintergrund ausführen, was zum Beispiel für das Empfangen von Push-Benachrichtigungen verwendet werden kann.
So kommen wir auf folgende positiven Eigenschaften von dieser Art App:
- Kann auch ohne aktive Internetverbindung laufen
- Empfangen von Push-Benachrichtigungen auch im minimierten Zustand möglich
- Sieht wie eine Mobile App aus, wenn sie vom Homescreen aus gestartet wird
Bei den Nachteilen wird es hier schon etwas schwieriger als bei der einfachen Web App. Schliesslich versucht die PWA genau die Brücke zwischen Internetseite und mobiler Anwendung zu schlagen und somit die entsprechenden negativen Merkmale auszumerzen. Die unvollständige Unterstützung der nutzbaren Funktionen eines Geräts fällt dennoch nicht besser aus. Dazu kommt noch, dass diese Art von Apps noch recht neu ist und somit noch nicht in allen Browsern funktioniert. Und wenn doch, dann nur in den neuesten Versionen.
Zusammengefasst kann man sagen, dass der grosse Vorteil der Web Apps in deren Plattformunabhängigkeit liegt. Am Gegenpol haben wir hingegen die fehlende Unterstützung einiger Features der benutzten Hardware.
Somit kommen wir auch schon zu den Mobile Apps, welche genau dieses Problem nicht haben:
Native App
Die native, also "heimische" App wird so entwickelt, dass sie auf dem Zielsystem optimal läuft und sich auch grafisch ideal integriert. Dafür werden zum Programmieren von den Herstellern zur Verfügung gestellte Baukasten (SDKs) verwendet. Diese bieten beispielsweise Möglichkeiten zum Auslesen der Sensorwerte und zum Ansprechen der Hardwarefunktionen eines Geräts. Zudem erleichtern sie das Erstellen der Benutzeroberfläche mittels vordefinierter Komponenten.
Daraus ergeben sich bereits folgende Vorteile der nativen App:
- Performante und vollständige Nutzung der Geräte-Hardware und anderer plattformspezifischen Funktionen
- Einheitliche und für den Benutzer gewohnte Benutzeroberfläche
Der grosse Nachteil ist hier aber, wenn man mehrere Betriebssysteme abdecken möchte. In diesem Fall muss die gesamte App mehrfach programmiert werden, jeweils mit dem Baukasten der anderen Plattformen die man unterstützen möchte.
Native Apps sind somit vor allem für Projekte geeignet, wo es nur ein Zielsystem gibt und sich dies auch in Zukunft nicht ändert.
Und damit kommen wir gleich zum nächsten Kandidaten in dieser Liste, denn dieser versucht die Vorteile von Web und Mobile Apps zu verschmelzen:
Hybride App
Die hybride App ist eigentlich eine Web App, die aber in einem plattformspezifischen Container verpackt und so ausgeliefert wird. So wird der Vorteil, dass der Kern der App nur einmal programmiert werden muss (siehe Web Apps) mit der Möglichkeit auf alle Gerätefunktionen zugreifen zu können (siehe Native App) vereint. Die hybride App wird somit ebenfalls über den Store der jeweiligen Plattform heruntergeladen und installiert.
Damit auch gleich zu den Pluspunkten:
- Software muss nur einmal geschrieben werden und kann dennoch für mehrere Plattformen ausgeliefert werden
- Zugriff auf die Features der genutzten Plattform dank Container
Beim Öffnen der App wird der Unterschied zur nativen App allerdings rasch sichtbar, denn die Benutzeroberfläche besteht nicht aus den plattformspezifischen Komponenten, sondern wie auch bei den Web Apps aus HTML Elementen. Oft geht das neben der für den Benutzer ungewohnten grafischen Darstellung auch auf die Performance. Man merkt meist einfach, dass es sich bei der App um keine native App handelt, obwohl dieser Anschein eigentlich ja erweckt werden soll.
Doch auch für dieses Problem gibt es eine Lösung:
Cross-Platform App
Manche zählen diese Technologie noch zu den hybriden Apps, da auch die Cross-Platform App mit nur einer Code-Basis auskommt, die dann aber auf mehreren Betriebssystemen läuft. Wegen eines wesentlichen Merkmals verdient sie in dieser Auflistung aber dennoch ein eigenes Kapitel: sie macht von den nativen Komponenten für die Benutzeroberfläche Gebrauch.
Die Cross-Platform App kann somit nicht nur über den Store geladen werden, sondern sieht auch noch aus wie eine echte native App. Sie unterstützt jegliche Hardware-Funktionalitäten und integriert sich optimal in das Betriebssystem. Sollte eine Funktion mal nicht über den zwischen den Plattformen geteilten Source Code abgebildet werden können, so kann man diesen optional auch mit nativem Code ergänzen.
Diese Art der App-Entwicklung bietet uns also die Vorteile der nativen und der Web Apps gleichzeitig:
- Gleicher Programmcode für mehrere Plattformen verwendbar
- Vollständige Nutzung der Funktionen des jeweiligen Betriebssystems bzw. Geräts
- Einheitliche und intuitive Benutzeroberfläche dank Zugriff auf native GUI-Komponenten
Als Nachteil wird manchmal genannt, dass für komplexere Apps vermehrt auch nativer Code geschrieben werden muss. Das wäre aber bei einer puren Native App auch der Fall.
Tool: Geeignete App Art für Ihr Projekt bestimmen
Es ist klar: eine für alle Probleme passende Lösung gibt es nicht. Jede Art eine App zu entwicklen hat seine ganz individuellen Vor- und Nachteile.
Um dennoch eine optimal passende Methode für Ihr konkretes App-Projekt zu bestimmen habe ich diesen interaktiven Test entwickelt, mit welchem Sie nach der Beantwortung von nur wenigen Fragen eine konkrete Empfehlung erhalten!
Viel Erfolg mit Ihrem Projekt!