La domanda "PWA o nativa?" appare presto in quasi tutti i progetti digitali e quasi sempre riceve una risposta sbagliata: come se ci fosse un vincitore universale. C'è chi giura che il nativo sia sempre superiore. C'è chi pensa che le PWA abbiano reso i nativi obsoleti. Entrambe le posizioni sono sbagliate per lo stesso motivo.
La scelta tra PWA e applicazione nativa non è una disputa di qualità tecnica. È una decisione su che tipo di prodotto stai costruendo, per chi, con quali risorse e con quali obiettivi. La risposta giusta per un’azienda è la risposta sbagliata per un’altra.
Questo testo è per coloro che iniziano a comprendere l'argomento. Non consiglierò una tecnologia in astratto. Spiegherò cosa differenzia ciascun approccio e perché questa differenza deve essere letta attraverso la lente della strategia, non solo dell'ingegneria.
Cos'è ciascuno, in realtà
Un'applicazione nativa è creata appositamente per una piattaforma, con gli strumenti e i linguaggi di quel sistema. Viene scaricato da uno store, installato sul dispositivo e funziona direttamente sul sistema operativo. Hai pieno accesso alle risorse del dispositivo.
Una PWA è, essenzialmente, un sito web. Utilizza le moderne tecnologie web per comportarsi come un'app: si apre velocemente, funziona offline, si installa in home screen e invia notifiche. Ma funziona sul browser e viene distribuito tramite il Web, non tramite un negozio.
Questa differenza di natura spiega quasi tutte le altre. Il nativo vive all'interno del sistema operativo; PWA risiede nella parte superiore del browser. Tutto ciò che ciascuno fa meglio o peggio deriva da questa origine.
La tesi: la domanda giusta non è "che è meglio"
Io sostengo che la domanda “quale è meglio?” deve essere abbandonato. Non ha risposta perché presuppone un’unica scala, e non esiste un’unica scala. C'è adeguatezza.
La domanda produttiva è: "Cosa deve fare il mio prodotto e quale approccio lo offre con il miglior equilibrio tra costi, portata ed esperienza?" Riformulata in questo modo, la discussione lascia il terreno religioso, dove ciascuna parte difende le proprie preferenze, ed entra nel terreno strategico, dove vengono valutati i veri compromessi.
Chiunque decida tra PWA e nativo senza prima definire di cosa ha bisogno il prodotto, sceglie lo strumento prima di comprendere il problema. E lo strumento scelto prima del problema è spesso quello sbagliato.
Cosa sanno fare meglio i nativi
L'app nativa eccelle laddove conta l'integrazione profonda dei dispositivi. Accesso completo a sensori, fotocamera, elaborazione intensiva, funzionalità hardware specifiche, prestazioni grafiche elevate, tutto ciò che il nativo offre con vantaggio.
Offre anche l'esperienza più fluida e integrata nel sistema perché è stata creata per quella piattaforma. E la presenza nell'App Store può essere un canale di scoperta e un segno di credibilità, a seconda del pubblico.
Il costo di questa profondità è alto. Sviluppi e gestisci in base alla piattaforma, dipendi dall'approvazione del negozio per la distribuzione e ogni aggiornamento deve essere rivisto e scaricato dall'utente. Per i prodotti che necessitano realmente di queste funzionalità, il costo è giustificato. Per chi non ne ha bisogno è un peso morto.
Ciò che PWA sa fare meglio
Il PWA brilla per autonomia ed economia. Una codebase serve tutti i dispositivi browser. La distribuzione è immediata, senza negozio, senza revisione: tu lo pubblichi e l'utente lo ha subito. E poiché è web, è trovabile dai motori di ricerca, riducendo l'attrito della scoperta.
Elimina anche l'attrito dell'installazione. L'utente accede tramite un collegamento, lo utilizza e lo installa solo se lo desidera. Per molti prodotti, abbassare la barriera all’ingresso vale più di qualsiasi funzionalità nativa.
Il costo di questa ampiezza è la profondità. L'accesso alle funzionalità del dispositivo è più limitato e varia a seconda della piattaforma. Alcune funzionalità dell'applicazione installata funzionano in modo non uniforme a seconda del sistema. Per i prodotti che dipendono da queste capacità, la limitazione pesa. Per coloro che non dipendono, è irrilevante.
La scelta come decisione aziendale
La decisione tra PWA e nativa riguarda innanzitutto il prodotto e il contesto. Vale la pena porre alcune domande oneste.
Il prodotto dipende da risorse hardware che solo l'hardware nativo può ottenere? Se sì, questo lo spinge a nativo. Se il prodotto è essenzialmente contenuto, transazione o interazione supportata dal web, PWA è forte.
Qual è la dimensione del team e del budget? Il mantenimento di più piattaforme native richiede struttura. Le piccole squadre di solito vincono con la base unica di PWA. Qual è l'obiettivo di raggiungimento? Se l'obiettivo è quello di essere su qualsiasi dispositivo con il minor attrito, PWA è in vantaggio. Se la strategia dipende dalla presenza e dalla credibilità del negozio, il nativo entra in gioco.
Nel settore pubblico, ad esempio, un servizio che deve raggiungere il maggior numero di cittadini, anche su dispositivi modesti e senza richiedere download, trova nelle PWA un alleato naturale. Un'applicazione che richiede un'autenticazione forte e una profonda integrazione con le risorse del dispositivo può giustificare l'applicazione nativa. Il criterio è sempre il servizio, mai la preferenza tecnica.
Prestazioni ed esperienza su ogni percorso
Vale la pena sfatare un mito comune: quello nativo è sempre veloce e PWA è sempre lento. Non è così. Un nativo mal realizzato crasha, consuma la batteria ed è fastidioso. Una PWA ben costruita si apre rapidamente e risponde bene. Le prestazioni percepite dall'utente dipendono molto più dalla qualità dell'esecuzione che dalla piattaforma scelta.
Ciò che cambia sono i punti di attenzione. Nella versione nativa, l'attenzione si concentra sull'utilizzo della memoria, sulla fluidità dell'interfaccia e sul consumo delle risorse del dispositivo. In PWA, sul peso del carico e sulla strategia di memorizzazione nella cache. Ogni percorso ha le sue insidie, ma entrambi possono offrire un'esperienza eccellente se ben curati, ed entrambi possono deludere se trascurati.
Per chi comincia a capire l’argomento, questa è una lezione liberatoria: la scelta della piattaforma non decide da sola se il prodotto sarà buono. Definisce il terreno; l'esecuzione definisce il risultato. Ciò allevia la pressione sulla decisione iniziale e sposta l’attenzione dove dovrebbe essere, ovvero sulla costruzione di ciò che hai scelto bene.
Maturità è rifiutare la falsa dicotomia
La visione più matura su questo argomento è quella di rendersi conto che PWA e nativi non sono nemici, e che spesso la migliore strategia combina i due nel tempo. Un prodotto può iniziare come PWA per essere convalidato in modo rapido ed economico e migrare funzionalità specifiche a quelle native quando l'uso lo giustifica.
L'errore del principiante è considerare la scelta come permanente e assoluta. È contestuale e rivedibile. Ciò che ha senso all’inizio di un prodotto, con pochi utenti e ipotesi da convalidare, potrebbe non avere senso in seguito, con nuove dimensioni ed esigenze.
Resistere alla falsa dicotomia "PWA contro nativo" è il segno di qualcuno che pensa al prodotto, non alla tecnologia. La domanda non è mai stata: quale sia il migliore? È sempre stato quello che meglio serve ciò che stai costruendo ora.
Se stai prendendo questa decisione e vuoi capire meglio come valutare i compromessi nel tuo caso, ci sono altri testi qui sul blog che approfondiscono confronti, esempi e l’esecuzione di ciascun approccio. E se vuoi parlare della tua situazione specifica, chiama semplicemente.
Leggi anche
- PWA vs nativi: la checklist decisionale prima di investire
- PWA vs nativi: cosa insegnano i casi reali sulla scelta
- Differenza tra sito web e applicazione: guida completa alla scelta
- App Web progressiva: esempi e storie di successo
- App Web progressiva: esempi e ottimizzazione per le aziende
- [PWA Cos'è 19