Progressive Web App: tecnologia, vantaggi e svantaggi
Pubblicato: 2022-11-24La febbre del cellulare colpisce tutti e i negozi online non fanno eccezione. Ogni marchio ha bisogno di avere una presenza mobile al giorno d'oggi. Ecco come si può fare:
- Un responsive web design, che comporta l'adeguamento del contenuto del sito web per adattarlo alle dimensioni dei dispositivi mobili e tablet;
- Un'applicazione mobile nativa, che può essere costosa, ma è sviluppata appositamente per gli smartphone;
- Un'app Web progressiva (PWA) che combina elementi del Web e delle app native.
Progressive Web App (PWA) è un insieme di tecnologie che consentono di installare un sito Web su un dispositivo come applicazione. Ciò significa che non è necessario sviluppare app iOS e Android insieme al sito web. A parte questo, le PWA non sono così difficili da sviluppare: ad esempio, il tuo team può farlo personalizzando temi già pronti come Magento 2 PWA Studio.
Le PWA sono utilizzate più ampiamente di quanto si possa immaginare. Viene utilizzato per e-commerce, progetti educativi, compagnie di viaggio, servizi di streaming e altri. I principali marchi, come Agent Provocateur, UK Meds, Alibaba ed Eleganza, utilizzano le applicazioni PWA come base o in aggiunta alle loro applicazioni mobili.
- Architettura dell'app Web progressiva (PWA).
- Lavoratori di servizio
- Shell dell'applicazione
- Manifesto dell'app Web
- Cache
- Vantaggi della Progressive Web App (PWA).
- Grande esibizione
- Migliore visibilità
- UX simile a un'app
- Supporto incrociato
- Costo di sviluppo inferiore
- Funziona offline
- Non è necessario posizionare l'app negli App Store
- Svantaggi della Progressive Web App (PWA).
- Compatibilità iOS insufficiente
- Funzionalità limitata
- Aumento del consumo della batteria
- Come funziona il processo di installazione?
- Quali risultati puoi aspettarti?
Architettura dell'app Web progressiva (PWA).
La maggior parte dei siti Web ha un'architettura monolitica. Significa che il suo front-end è generato sul back-end. E quando un utente richiede una pagina Web, il server produce una pagina HTML recuperando informazioni specifiche dell'utente e inviandole via Internet al dispositivo dell'utente. Quando l'utente apre un'altra pagina sul sito Web, il processo si ripete.
Un'alternativa all'architettura monolitica è senza testa. Implica una divisione anteriore e posteriore. PWA è un tipo di sito Web headless. Di conseguenza, durante il caricamento iniziale viene ricevuta dal server solo una semplice pagina HTML con un file JavaScript. Il resto del sito viene visualizzato utilizzando il browser invece di ricevere tutto il materiale direttamente dal back-end.
Di conseguenza, PWA riceve le sue migliori qualità, come una buona UX, alta velocità, reattività, ecc. Ecco gli elementi chiave di PWA.
Consigliato per te: Framework più popolari per la creazione di app Web progressive (PWA).
Lavoratori di servizio
Gli script noti come "service worker" operano in background nel browser. Funzionano senza una pagina web e hanno ottime funzionalità come la gestione delle notifiche e la gestione delle richieste di rete. Finora ha supportato funzioni come memorizzazione nella cache, sincronizzazione in background, modalità offline e notifiche push.
Shell dell'applicazione
Il codice HTML, CSS e JavaScript fondamentale richiesto per alimentare un'interfaccia utente viene definito shell dell'applicazione. È la spina dorsale dell'app. Quando un utente avvia un'app Web progressiva, la shell dell'applicazione è la prima cosa da caricare. Ciò garantisce che l'interfaccia venga caricata prontamente anche quando un utente è offline. Inoltre, la shell dell'applicazione può essere memorizzata nella cache per consentire il caricamento rapido nelle visite future.
Manifesto dell'app Web
Il manifest della Web-App è l'elemento responsabile dell'aspetto della PWA su piattaforme desktop e mobili. Con il suo aiuto, è possibile controllare come vengono mostrate le PWA a tutti gli utenti. Un browser Web esamina il file manifest quando si connette per la prima volta a una rete, scarica le risorse e le memorizza localmente. L'app Web può essere utilizzata senza una connessione Internet utilizzando la cache locale del browser.
Cache
L'approccio all'archiviazione della cache elimina la necessità di ottenere ripetutamente i dati dall'origine. Ciò si ottiene archiviando temporaneamente i dati in un data center di terze parti o sul dispositivo di un utente. Invece di ottenerlo dalla fonte, può essere caricato dalla cache.
Puoi implementare una varietà di tecniche di memorizzazione nella cache nella tua PWA. La memorizzazione nella cache di intere risorse è la più tipica. Ciò implica che sia il contenuto statico che quello dinamico sono inclusi nella cache.
La memorizzazione nella cache di risorse parziali è un'altra tattica. Utilizzando questo metodo, puoi memorizzare nella cache solo determinati materiali, come script o foto. Questo può essere efficace per le pagine in cui la maggior parte del contenuto è dinamico.
Vantaggi della Progressive Web App (PWA).
Secondo Statista, nel 2021, circa il 75% delle vendite al dettaglio globali nell'e-commerce è stato effettuato tramite canali mobili. Nel 2017 le cifre e le previsioni per il futuro erano così:
Il numero di utenti di dispositivi mobili è in forte crescita, quindi l'introduzione di PWA sta diventando più critica che mai. Ecco alcune delle funzionalità dei siti PWA a cui vale la pena prestare attenzione.
Fonte immagine: Statista.
Grande esibizione
PWA utilizza i lavoratori dei servizi in background per svolgere attività ad alta intensità di lavoro, il che si traduce in un tempo di caricamento migliore. Questi script operano indipendentemente dalla pagina Web e precaricano tutte le informazioni necessarie per mantenere una navigazione rapida e fluida. Inoltre, poiché gli script non sono attivi sulla pagina, non hanno alcun impatto sulla velocità di caricamento della pagina. La navigazione attraverso l'app diventa praticamente veloce una volta che i dati sono stati memorizzati nella cache.
Migliore visibilità
Una maggiore visibilità è fornita dall'opzione "aggiungi alla schermata iniziale". I clienti possono trovare l'app con un solo clic e selezionare il prodotto senza distrazioni. E se inseriscono il prodotto nel carrello, puoi successivamente incoraggiarli ad acquistarlo inviando notifiche su sconti o offerte speciali.
UX simile a un'app
Le PWA si comportano come siti web e hanno un design simile all'app nativa. Inoltre, le PWA e le applicazioni native hanno entrambe un impatto comparabile sull'esperienza dell'utente e condividono molte funzionalità, come l'accesso al database e i dati automatici.
Supporto incrociato
Le PWA sono in grado di operare ovunque. Per coloro che tendono a passare da un dispositivo all'altro, il supporto incrociato è disponibile ovunque. Quando si tratta di aziende che si affidano alle PWA, è fondamentale fornire ai dipendenti un software che funzioni al meglio, sia che si tratti di una piattaforma o di una versione dell'app.
Costo di sviluppo inferiore
Lo sviluppo di applicazioni native richiede due basi di codice distinte. Ad esempio, la creazione di applicazioni native richiede sviluppatori esperti in Swift o Objective-C per lo sviluppo iOS e Kotlin o Java per Android, il che è costoso. Le app Web progressive, a loro volta, si basano su linguaggi di programmazione ampiamente utilizzati come HTML, CSS e JavaScript. A parte questo, la loro manutenzione richiede un unico team specializzato nello sviluppo web.
Funziona offline
Una delle caratteristiche di spicco di PWA è la navigazione offline. Se la tua connessione fallisce, non perderai l'accesso a dati e servizi cruciali.
PWA consente di navigare offline nell'app memorizzando nella cache e salvando alcuni dei dati visualizzati nell'app. Migliora inoltre le prestazioni gestendo le risorse memorizzate nella cache e abilitando le notifiche push, anche offline.
Non è necessario posizionare l'app negli App Store
Il rilascio dell'applicazione negli app store è associato alla spesa aggiuntiva per il progetto. Alcuni negozi addebitano un pagamento anche prima del rilascio e richiedono che il progetto passi attraverso una noiosa procedura di pubblicazione e certificazione. Questa strategia aumenta i prezzi e allunga il tempo medio di mercato, il che a volte può portare a perdere vacanze promozionali o rilasciare versioni non testate per rispettare una scadenza.
Con PWA, tuttavia, puoi evitare l'intero problema dell'app store. Le PWA sono pratiche sia per i clienti che per le aziende poiché consentono ai clienti di utilizzare la tua app e ricevere aggiornamenti senza scaricarla o attendere un nuovo round di verifica.
Potrebbe piacerti: React Native vs Flutter vs PWA: Battle of Trending Mobile App Frameworks.
Svantaggi della Progressive Web App (PWA).
Quando scegli il tipo di app mobile da introdurre per la tua azienda, considera che poiché la tecnologia è relativamente nuova, ci sono alcuni difetti che dovresti considerare.
Compatibilità iOS insufficiente
Non tutte le funzionalità PWA sono supportate da iOS. Rispetto ad Android, il supporto per i service worker è molto limitato. Puoi solo salvare i dati dell'applicazione e memorizzarne i file nella cache (nessuna attività in background). Lo spazio di archiviazione ha un limite di 50 Mb. Per questo motivo, l'accesso di molti utenti alle PWA è limitato. Esistono anche limitazioni all'utilizzo di alcune funzioni integrate come Siri, pagamenti in-app, ecc. Un'esperienza utente in PWA perde rispetto alla UX offerta dalle app native. Che è una vera perdita in un mondo in cui UX è importante almeno quanto il marketing.
Funzionalità limitata
Non tutte le funzionalità del dispositivo possono essere utilizzate. Ad esempio, non puoi accedere a contatti, calendari o Bluetooth. Un'app nativa è spesso preferibile a una PWA quando l'applicazione deve utilizzare ampiamente l'hardware di un dispositivo. Ad esempio, le soluzioni basate su Bluetooth, come le condivisioni di file o i messenger Bluetooth, sono generalmente sviluppate in modo nativo.
Aumento del consumo della batteria
Il fatto che siano crittografati in codici complicati rende più difficile per i telefoni decodificarli. Di conseguenza, le PWA consumano più batteria rispetto alle applicazioni native.
Come funziona il processo di installazione?
Vediamo come funziona il processo di installazione su un esempio di Lancome.com
- Un utente apre un sito Web in un browser sul proprio dispositivo mobile.
- L'utente visualizza un popup con un'offerta. Ad esempio, "Aggiungi l'app alla schermata iniziale".
- L'utente installa l'applicazione con un clic.
- L'utente tocca un'icona e il sito web si apre.
Fonte immagine: Lancome.
Ti potrebbe piacere anche: Magento PWA Studio: lo strumento di app Web progressive per Magento!
Quali risultati puoi aspettarti?
Le Progressive Web App producono ottimi risultati per le aziende che le lanciano. Ad esempio, secondo web.dev, dopo aver ridotto le dimensioni della propria app di quasi il 97%, Twitter ha registrato un aumento del 65% nelle visualizzazioni di pagina per sessione, il 75% in più di tweet e un calo del 20% nella frequenza di rimbalzo. Aveva anche 2,3 volte più traffico organico, il 58% in più di abbonati e il 49% in più di utenti attivi giornalieri dopo la conversione a PWA. Hulu ha registrato un aumento del 27% dei visitatori abituali con l'introduzione di un'app Web progressiva in aggiunta all'esperienza desktop specifica della piattaforma.
Con le app web progressive, hai un'opportunità unica di offrire una fantastica esperienza web ai tuoi utenti. Le PWA utilizzano le più recenti tecnologie web per consentire a chiunque di utilizzare ciò che crei, su qualsiasi dispositivo, con un'unica base di codice.
Questo articolo è stato scritto da Alex Husar. Alex è Chief Technology Officer presso un'azienda che fornisce servizi di sviluppo di app Web progressivi. Lavorando in azienda da quasi un decennio, Alex ha acquisito competenza nello sviluppo web, nella creazione di app web progressive (PWA) e nella gestione del team. Alex approfondisce costantemente le sue conoscenze in varie aree tecnologiche e le condivide nei suoi articoli. Aiuta i programmatori a superare le sfide comuni e rimanere aggiornati con le ultime tendenze di sviluppo web. Puoi seguirlo su LinkedIn.