Das Web ist eine unglaubliche Plattform. Seine Mischung aus Allgegenwärtigkeit über Geräte und Betriebssysteme hinweg, sein benutzerzentriertes Sicherheitsmodell und die Tatsache, dass weder seine Spezifikation noch seine Implementierung von einem einzigen Unternehmen kontrolliert wird, macht das Web zu einer einzigartigen Plattform für die Entwicklung von Software. Kombiniert mit seiner inhärenten Verlinkbarkeit ist es möglich, es zu durchsuchen und das, was man gefunden hat, mit jedem und überall zu teilen. Wann immer Sie eine Website besuchen, ist sie aktuell, und Ihre Erfahrung mit dieser Website kann so flüchtig oder so dauerhaft sein, wie Sie es wünschen. Webanwendungen können jeden, überall und auf jedem Gerät mit einer einzigen Codebasis erreichen.
Plattformspezifische Anwendungen sind dafür bekannt, unglaublich reichhaltig und zuverlässig zu sein. Sie sind allgegenwärtig, auf Startbildschirmen, Docks und Taskbars. Sie funktionieren unabhängig von der Netzwerkverbindung. Sie starten in ihrer eigenen, eigenständigen Umgebung. Sie können Dateien aus dem lokalen Dateisystem lesen und schreiben, auf Hardware zugreifen, die über USB, seriell oder Bluetooth angeschlossen ist, und sogar mit Daten interagieren, die auf Ihrem Gerät gespeichert sind, wie Kontakte und Kalenderereignisse. In diesen Anwendungen können Sie Dinge wie das Aufnehmen von Fotos, die Anzeige der abgespielten Songs auf dem Startbildschirm oder die Steuerung der Songwiedergabe in einer anderen App tun. Plattformspezifische Anwendungen fühlen sich wie ein Teil des Geräts an, auf dem sie ausgeführt werden.
Ein Diagramm, das die relativen Fähigkeiten und die Reichweite von plattformspezifischen Apps mit hohen Fähigkeiten, Web-Apps mit hoher Reichweite und progressiven Web-Apps, die sowohl hohe Fähigkeiten als auch eine hohe Reichweite haben, veranschaulicht.
Fähigkeiten vs. Reichweite von plattformspezifischen Apps, Web-Apps und progressiven Web-Apps.
Wenn Sie über plattformspezifische Apps und Web-Apps in Bezug auf Fähigkeiten und Reichweite nachdenken, repräsentieren plattformspezifische Apps das Beste an Fähigkeiten, während Web-Apps das Beste an Reichweite darstellen. Wo passen also Progressive Web Apps hinein?
Progressive Web Apps (PWA) werden mit modernen APIs erstellt und erweitert, um verbesserte Fähigkeiten, Zuverlässigkeit und Installierbarkeit zu bieten und gleichzeitig jeden, überall und auf jedem Gerät mit einer einzigen Codebasis zu erreichen.
Die drei App-Säulen
Progressive Web Apps sind Webanwendungen, die so konzipiert sind, dass sie leistungsfähig, zuverlässig und installierbar sind. Diese drei Säulen verwandeln sie in ein Erlebnis, das sich wie eine plattformspezifische Anwendung anfühlt.
Fähig #
Das Web ist heute an sich schon ziemlich fähig. Sie können zum Beispiel eine hyperlokale Video-Chat-App mit WebRTC, Geolocation und Push-Benachrichtigungen erstellen. Sie können diese App installierbar machen und diese Unterhaltungen mit WebGL und WebVR virtuell machen. Mit der Einführung von Web Assembly können Entwickler andere Ökosysteme, wie C, C++ und Rust, anzapfen und jahrzehntelange Arbeit und Fähigkeiten auch in das Web bringen. Squoosh.app zum Beispiel nutzt dies für seine fortschrittliche Bildkompression.
Bis vor kurzem konnten nur plattformspezifische Apps diese Fähigkeiten wirklich für sich beanspruchen. Während einige Funktionen immer noch außerhalb der Reichweite des Webs liegen, wollen neue und kommende APIs dies ändern und erweitern die Möglichkeiten des Webs mit Funktionen wie Dateisystemzugriff, Mediensteuerung, App-Badging und vollständiger Unterstützung der Zwischenablage. Alle diese Funktionen sind mit dem sicheren, benutzerzentrierten Berechtigungsmodell des Webs ausgestattet, das sicherstellt, dass der Besuch einer Website für den Benutzer nie eine unangenehme Angelegenheit ist.
Dank moderner APIs, Web Assembly und neuer und zukünftiger APIs sind Webanwendungen leistungsfähiger als je zuvor, und diese Möglichkeiten werden immer größer.
Zuverlässig
Eine zuverlässige Progressive Web App fühlt sich schnell und verlässlich an, unabhängig vom Netzwerk.
Geschwindigkeit ist entscheidend dafür, dass Benutzer Ihr Erlebnis nutzen. Tatsächlich steigt die Wahrscheinlichkeit, dass ein Benutzer abspringt, um 123 %, wenn die Seitenladezeiten von einer Sekunde auf zehn Sekunden steigen. Die Leistung hört nicht nach dem Onload-Ereignis auf. Benutzer sollten sich nie fragen, ob ihre Interaktion – zum Beispiel das Klicken auf eine Schaltfläche – registriert wurde oder nicht. Scrollen und Animationen sollten sich flüssig anfühlen. Die Leistung wirkt sich auf das gesamte Erlebnis aus, von der Wahrnehmung Ihrer Anwendung durch den Benutzer bis hin zu ihrer tatsächlichen Leistung.
Schließlich müssen zuverlässige Anwendungen unabhängig von der Netzwerkverbindung nutzbar sein. Benutzer erwarten, dass Anwendungen auch bei langsamen oder unzuverlässigen Netzwerkverbindungen oder sogar im Offline-Modus gestartet werden. Sie erwarten, dass die letzten Inhalte, mit denen sie interagiert haben, wie z. B. Medientitel oder Tickets und Reiserouten, verfügbar und nutzbar sind, auch wenn eine Anfrage an Ihren Server schwer zu bekommen ist. Wenn eine Anfrage nicht möglich ist, erwarten sie, dass man ihnen mitteilt, dass es Probleme gibt, anstatt dass die Anwendung stillschweigend versagt oder abstürzt.
Benutzer lieben Apps, die in kürzester Zeit auf Interaktionen reagieren, und ein Erlebnis, auf das sie sich verlassen können.
Installierbar
Installierte Progressive Web Apps laufen in einem eigenständigen Fenster statt in einem Browser-Tab. Sie können über den Startbildschirm, das Dock, die Taskleiste oder die Ablage des Benutzers gestartet werden. Es ist möglich, auf einem Gerät nach ihnen zu suchen und mit dem App-Switcher zwischen ihnen zu springen, sodass sie sich wie ein Teil des Geräts fühlen, auf dem sie installiert sind.
Neue Möglichkeiten eröffnen sich nach der Installation einer Web-App. Tastaturkürzel, die normalerweise bei der Ausführung im Browser reserviert sind, werden verfügbar. Progressive Web Apps können sich registrieren, um Inhalte von anderen Anwendungen zu akzeptieren oder um die Standardanwendung für verschiedene Dateitypen zu sein.
Wenn eine Progressive Web App aus einer Registerkarte in ein eigenständiges App-Fenster umzieht, verändert sie die Art und Weise, wie Benutzer über sie denken und mit ihr interagieren.
Das Beste aus beiden Welten
Im Kern sind Progressive Web Apps einfach nur Webanwendungen. Mithilfe von Progressive Enhancement werden neue Funktionen in modernen Browsern aktiviert. Mithilfe von Service Workern und einem Web-App-Manifest wird Ihre Webanwendung zuverlässig und installierbar. Wenn die neuen Funktionen nicht verfügbar sind, erhalten die Benutzer trotzdem die Kernfunktionalität.
Die Zahlen lügen nicht! Unternehmen, die Progressive Web Apps eingeführt haben, konnten beeindruckende Ergebnisse erzielen. Twitter beispielsweise verzeichnete einen Anstieg der Seiten pro Sitzung um 65 %, 75 % mehr Tweets und einen Rückgang der Absprungrate um 20 % – und das alles bei einer Verringerung der Größe der App um über 97 %. Nikkei verzeichnete nach der Umstellung auf eine PWA 2,3-mal mehr organischen Traffic, 58 % mehr Abonnements und 49 % mehr täglich aktive Nutzer. Hulu ersetzte sein plattformspezifisches Desktop-Erlebnis durch eine Progressive Web App und verzeichnete einen Anstieg der wiederkehrenden Besuche um 27 %.
Progressive Web Apps bieten Ihnen eine einzigartige Möglichkeit, ein Web-Erlebnis zu liefern, das Ihre Nutzer lieben werden. Progressive Web Apps nutzen die neuesten Web-Funktionen, um verbesserte Funktionen und Zuverlässigkeit zu bieten. Sie ermöglichen es, dass das, was Sie erstellen, von jedem, überall und auf jedem Gerät mit einer einzigen Codebasis installiert werden kann.