Progressive Web Apps, ook bekend als PWA's, zijn de beste manier voor ontwikkelaars om hun webapps sneller en performanter te maken. Kort samengevat, PWA's zijn websites die recente webstandaarden gebruiken om installatie op de computer of het apparaat van een gebruiker mogelijk te maken en een appachtige ervaring aan die gebruikers te bieden. Twitter heeft recent mobile.twitter.com gelanceerd als een PWA, gebouwd met React en Node.js. Ze hebben een goede ervaring met PWA's gehad, wat aantoont dat de technologie eindelijk klaar is voor de massa.

Een PWA is een webtoepassing die op uw systeem kan worden "geïnstalleerd". Het werkt offline als je geen internetverbinding hebt, gebruikmakend van gegevens in de cache tijdens je laatste interacties met de app. Als u op een bureaublad werkt en Chrome gebruikt en de juiste vlaggen hebt ingeschakeld, wordt u gevraagd om de app te installeren wanneer u de site bezoekt.

U moet van uw webapp een PWA maken, omdat deze de tijd verlaagt die nodig is om uw app te laden en uw gebruikers een betere ervaring oplevert. Het laden van HTTPS is een goede beveiligingspraktijk en het toevoegen van pictogrammen (met behulp van een manifest van een web-app) doe je sowieso. Als u een cache-first strategie voor de service worker heeft, kan uw app offline werken (als de gebruiker al gegevens heeft geladen), waardoor een van de grootste problemen met webapps wordt weggenomen.

Het toevoegen van PWA-ondersteuning is belangrijk, zodat mensen met trage verbindingen en betaalbare smartphones uw webapp gemakkelijker kunnen gebruiken. Als uw app groot is en u delen ervan niet kunt laden (wat betekent dat u het on-demand in plaats van aan het begin moet laden), is het misschien logisch om alles in een hybride app met Cordova te bundelen. Als uw app intensieve taken uitvoert of zeer interactief is (zoals een game), is coderen met native SDK's waarschijnlijk een goede optie.

PWA's zijn handig voor apps zoals Twitter en nieuwssites omdat ze veel tekst bevatten die u wel zult lezen, maar niet noodzakelijkerwijs zult gebruiken. Als je het als een PWA hebt, kun je de app openen, de gegevens laden en de inhoud later lezen als je offline bent. Dit zou moeten werken in een normale webapplicatie, maar ik heb gemerkt dat sommige browsers de pagina opnieuw proberen te laden wanneer je ze opent, wat resulteert in een gevreesde "server niet gevonden" fout.

Geen van deze technieken zal echter uw gebruikers helpen met trage verbindingen en minder krachtige smartphones. Zelfs als u ervoor kiest om een ​​native app te maken, is het nog steeds verstandig om een ​​lichtgewicht PWA-app te maken die in seconden kan worden geladen en uw gebruikers iets te bieden heeft om mee te werken.

PWA's zijn de weg van de toekomst en het nu. De meeste browsers ondersteunen dit, met name de afwezige ondersteuning in Safari. Het is grappig om te zien dat Apple PWA-ondersteuning op iOS blokkeert wanneer ze alleen web-apps op de eerste iPhone ondersteunen. Ze vermelden echter service workers als "in overweging" in WebKit. Ondertussen pleit Google voor progressive websites met enorme hoeveelheden documentatie over PWA's en vele conferentiesessies over dit onderwerp op Google I / O 2017.