PWA udvikling
når web og app skal mødes
En Progressive Web App er grundlæggende en webapplikation, der kan udnytte browserfunktioner som installation, caching og i nogle miljøer push-notifikationer. PWA kan være et stærkt valg, men er ikke en universel erstatning for native apps.
En webapplikation med app-lignende muligheder
PWA er en samling webteknikker og browserfunktioner, ikke et separat programmeringssprog eller framework. En PWA leveres via webben og kan blandt andet bruge service workers til caching og offline-scenarier samt et web app manifest til installation.
Hvilke funktioner der er tilgængelige afhænger af browser, operativsystem og enhed. Derfor bør funktioner som push, offline-adfærd og hardwareadgang altid vurderes mod de platforme, løsningen faktisk skal understøtte.
Vælg efter produktet, ikke efter teknologien
Bred distribution
Brugerne kan åbne løsningen via et link uden først at finde den i en app store.
Web og mobil
Godt match når samme produkt primært består af webbaserede flows på desktop og mobil.
Offline-scenarier
Udvalgte data og funktioner kan caches, hvis produktet skal kunne håndtere ustabil forbindelse.
Installation
På understøttede platforme kan brugeren installere PWA'en og åbne den som en app.
Eksisterende web-stack
Et webteam kan ofte bygge PWA-funktionalitet oven på en moderne frontend uden en separat native kodebase.
Kontrolleret scope
PWA passer bedst, når produktets krav matcher browsernes faktiske capabilities.
PWA, cross-platform eller native?
PWA
Relevant når webdistribution, én webkodebase og adgang via browser er vigtigere end maksimal platformintegration.
Cross-platform
React Native, Flutter eller .NET MAUI kan passe bedre, når app-store distribution og dybere mobilintegration er centrale krav.
Native
Kan være det rigtige valg ved meget platformsspecifik funktionalitet, hardwareintegration eller særlige UX- og performancekrav.
Performance og sikkerhed kommer ikke automatisk
En PWA er ikke automatisk hurtigere eller mere sikker end andre app-arkitekturer. Performance afhænger blandt andet af JavaScript, rendering, netværk, caching og backend. Sikkerheden afhænger af hele løsningen, herunder autentifikation, adgangskontrol, datahåndtering, dependencies og drift.