In der HAK haben wir uns hauptsächlich mit diesen drei Arten von Apps beschäftigt.
Eine Web App ist eine Anwendungssoftware, welche in der Regel auf HTML, JavaScript und CSS basiert und im Browser verschiedener Endgeräte über das Internet abgerufen werden kann, weshalb hierfür keine vorherige Installation oder ein Download nötig ist.
Als Native App oder Native Application (deutsch: native Anwendung) werden Anwendungen auf mobilen Endgeräten bezeichnet, die speziell für ein Betriebssystem, nämlich das des jeweiligen Endgerätes, konzipiert und entwickelt wurden.
Als Progressive Web Apps (kurz: PWA) werden hybride Websites bezeichnet, die Eigenschaften klassischer Smartphone Apps aufweisen, aber über einen Browser aufgerufen werden.
Sie sind von überall aus nutzbar, auch ohne Zugang zu einem speziellen Gerät.
Webapplikationen können zwar weniger gut auf die Hardware des genutzten Geräts abgestimmt werden, funktionieren dafür aber auf allen Betriebssystemen und Geräten, die über einen von der Web-App unterstützten Webbrowser verfügen (in der Regel sind dies alle aktuellen Browser). Es reicht also im Idealfall eine einzige App, um alle Plattformen abzudecken. Allerdings ist es nicht immer möglich, die Anwendung für alle Browser zu optimieren.
Einen weiterer Pluspunkt liegt in der Schließung von Sicherheitslücken: Bei Native Apps sind diese nur über den Download einer neuen Version bzw. eines Updates zu beheben. Ein Security-Update einer Webanwendung wird hingegen direkt in die Software implementiert, sodass alle User automatisch auf die sicherste Version zugreifen. Darüber hinaus sind Web-Apps oftmals günstiger und schneller in der Produktion.
Bei der Web App entfällt der Download über den Store. Stattdessen wird die App direkt über eine URL (zum Beispiel via QR-Code) geöffnet und kann auf dem Homescreen abgelegt werden.
Webanwendungen lassen sich für eine Vielzahl von Nutzungsszenarien entwerfen und von jedermann verwenden. Zu den häufig verwendeten Webanwendungen gehören zum Beispiel Webmail, Online-Rechner oder E-Commerce-Shops. Auf einige Webanwendungen kann nur mit einem bestimmten Browser zugegriffen werden. Die meisten Webanwendungen sind jedoch unabhängig vom Browser verfügbar.
Die Native Entwicklung einer Applikation garantiert, dass diese optimal auf das Betriebssystem und dessen mobilen Endgerät angepasst ist.
Grundsätzlich zeichnen sich Native Apps dadurch aus, dass sie eine sehr gute Performance besitzen. Sie interagieren mit der Hardware und bieten eine schnellere Geschwindigkeit bei der Nutzung der App durch den Anwender. Der letzte Punkt ist entscheidend für eine möglichst hohe Usability bei mobilen Anwendungen.
Hinzu kommt, dass die Interaktion zwischen nativer App und Betriebssystem dazu führt, dass (fast) alle Funktionen des Systems ansteuerbar sind. Native Apps können Push-Nachrichten versenden und auf weitere systeminterne Funktionen zugreifen. Zum Beispiel das Gyroskop, das die Bewegung und Neigung des Gerätes erkennt. Oder die Datenübertragung per Bluetooth.
Die Installation seitens der Nutzer gestaltet sich bei nativen Apps sehr einfach. Mithilfe des jeweiligen App Stores finden Nutzer zahlreiche Apps und können diese per Klick installieren. Die Nutzung kann oft auch unabhängig vom Netzzugang erfolgen, was bei Web Apps nicht der Fall ist.
Die Entwicklungskosten von nativen Apps können sehr umfangreich sein, weil meist unterschiedliche Versionen für verschiedene Betriebssysteme entwickelt werden müssen. Hinzu kommen Transaktionsgebühren, die von der Plattform automatisch abgeführt werden. Updates von nativen Apps sind zudem häufig mit Mehraufwand verbunden, weil für jedes Betriebssystem eigene Updates ausgerollt werden müssen.
Eine Progressive Web–App (PWA) ist eine Website, die sich wie eine Native Mobile App verhalten soll – auch ohne Internetzugang.
Die Programmierung von PWAs ist im Vergleich zu Native Mobile Apps weit weniger aufwendig und kostenintensiv. Zudem lässt sich mit einer PWA gleichzeitig ein traditioneller Webauftritt wie auch eine plattformunabhängige App realisieren.
PWAs sind sofort über einen Browser verfügbar – sie müssen nicht im klassischen Sinne heruntergeladen und anschließend installiert werden. Das hat zusätzlich den Vorteil, dass man PWAs unverbindlich ausprobieren kann. Über WebAPKs lassen sie sich auch installieren, um sie tiefer in das Betriebssystem zu integrieren.
PWAs benötigen kaum Speicherplatz und weniger Ressourcen als Native Mobile Apps, können aber eine ähnlich gute Performance abrufen.
PWAs können über Suchmaschinen gefunden und im Web verlinkt werden. Sie sind unabhängig vom abgeschlossenen Ökosystem eines App-Stores.
Nicht alle Browser und Betriebssysteme unterstützen PWAs im vollen Umfang. Viel hängt noch davon ab, ob iOS-Geräte diese Technik unterstützen werden. WebAPKs stellen zudem eine experimentelle Technik mit ungewisser Zukunft dar.
Die Nutzung aller nativen Gerätefunktionen ist nicht möglich (es fehlt etwa der Zugriff auf Kontakte, Kalender, Bluetooth oder NFC). Selbst wenn es durch eine bessere Browser-Unterstützung bald möglich sein sollte, PWAs tiefer in das Betriebssystem zu integrieren – sie werden nie native Funktionen in der Form einbeziehen können wie Native Apps.
Keine klassische Integration im App Drawer des Geräts möglich.
Keine Positionierung im App-Store möglich.
Mit AppGyver (jetzt SAP Build Apps) erhalten Geschäftsanwender eine No-Code-Plattform für die Entwicklung ihrer Apps. Sie richtet sich an Nutzer ohne Programmierkenntnisse, die mobile Anwendungen und Web-Apps im Baukastenprinzip erstellen möchten. Seit Anfang 2021 ist der finnische Anbieter Teil von SAP.
Die Erstellung einer Anwendung erfolgt mit AppGyver im Composer Pro und dort im sogenannten App Builder. Hier erhält der Nutzer Zugriff auf die Elemente, aus denen er die App aufbauen kann. Insgesamt bietet der Composer über 500 Kernbausteine an, aus denen der Nutzer seine App zusammensetzt.
Ein weiterer wichtiger Aspekt von AppGyver betrifft die Logik-Funktionen. Composer Pro bietet dem Nutzer die Möglichkeit, beliebige Beziehungen zwischen den Elementen herzustellen und die Logik der Anwendung auf rein visuelle Weise zu erstellen. Auch hier sind keine Programmierkenntnisse erforderlich. Daher muss der Anwender zum Beispiel keine bestimmte Syntax lernen. Das soll dabei helfen, die Entwicklungszeit für Apps zu verkürzen. Ein Beispiel ist die Registrierung einer Benutzereingabe, die dann automatisch zum Erfassen eines QR-Codes über die Kamera und die Erstellung eines dazugehörigen Datensatzes führt. Programmierkenntnisse, die mobile Anwendungen und Web-Apps im Baukastenprinzip erstellen möchten. Seit Anfang 2021 ist der finnische Anbieter Teil von SAP.
Die Vorteile der No-Code-Plattform sind in erster Linie in den nicht benötigten Programmierkenntnissen zu sehen. Das bietet Unternehmen mehr Flexibilität beim Einsatz ihrer Arbeitskräfte. Während für die Erstellung der Applikationen bisher nur Mitarbeiter mit Programmier-Hintergrund infrage kamen, können sich nun mehr Mitarbeiter zum Beispiel aus dem Vertrieb oder anderen Abteilungen ebenfalls an der App-Entwicklung beteiligen. Für die Unternehmen eröffnet sich die Möglichkeit, die eigenen Kräfte schneller in die Entwicklung einzuarbeiten.