Progressive WEB apps: cosa sono e cosa fanno

Le progressive web apps rappresentano, a detta di molti, il futuro dell’interazione coi nostri smartphone, per sfruttarne in maniera innovativa le potenzialità. Vediamo cosa sono e come funzionano.

Cosa sono le progressive web apps e come funzionano

Le app acquistate nei tradizionali store consentono di eseguire numerose operazioni, impossibili con le app per i browser Mobile Web.
Le progressive web apps servono proprio a colmare questa lacuna con nuove Web API, nuovi design e nuove buzzwords: ovvero consentono di eseguire le stesse operazioni che ci si aspetterebbe di eseguire con apps native del browser mobile, con un sistema che usa tecnologie di base standard e risultano accessibili da chiunque sul web.
Il concetto di app progressive indica un insieme di tecnologie che funzionano in sintonia, per offrire un’esperienza in tutto simile a quella offerta da una app sul mobile web.

progressive web apps

I Service Workers delle progressive web apps

I Service Workers delle progressive web apps sono delle tecnologie estremamente potenti, che caricano funzionalità offline, offrono notifiche, l’updating di contenuti di background, il servizio di caching dei contenuti e molte altre funzioni.
Un Service Worker è uno script che lavora dietro le quinte, indipendente dalla tua app, e si attiva in risposta ad eventi come richieste della rete, notifiche, cambi di connettività ed altro.

Può essere definito come un “proxy”, visto che questa tecnologia ci consente di accorgerci di un particolare evento ogni volta che ne parte la richiesta dalla rete. Possiamo gestire quell’evento con il pieno controllo: il nostro script si comporta esattamente come un proxy per la richiesta.
La grande potenza e flessibilità dei Service Workers li rende molto complicati e generalmente gli sviluppatori usano schemi prestabiliti per configurare gli utilizzi più diffusi, come l’uso non in linea: Mozilla e Google sono in prima linea sotto questo aspetto.

Shell

Il modello di App Shell è un concetto dal design semplice in base al quale il carico iniziale di una mobile web app fornisce una shell di base di un utente app, e il contenuto per l’applicazione viene caricato solo successivamente.
Una App Shell non è una API Web o un framework, piuttosto un approccio progettuale cui gli sviluppatori possono scegliere di aderire: si potrebbe dire che si tratta di un approccio molto semplice, ma reso più complicato da una buzzword.

Con il modello App Shell, ci concentriamo su come mantenere separata la shell della nostra app UI e il contenuto all’interno di essa.
Semplificando, la nostra App Shell viene memorizzata nella cache in modo tale che si carichi il più presto possibile quando un utente visita e ritorna in un momento successivo. Caricando la shell e i contenuti separatamente, teoricamente migliora la percezione dell’utente riguardo alle prestazioni e all’usabilità della app.

 

Vuoi saperne di più sullo sviluppo di progressive web apps? Contattaci