Web App e App Native quali sono le differenze – Introduzione

App Native vs Web App

Le App native sono condannate

Da questo momento in poi, non svilupperò più alcuna app nativa.

Tutte le mie app stanno andando verso Web App: progressive web apps. Le Progressive web apps sono applicazioni web che sono progettate per lavorare senza soluzione di continuità su dispositivi mobile.

Cosa voglio intendere per “ancora di più senza soluzione di continuità?”.

La maggior parte del traffico Web viene da dispositivi mobile, e gli utenti installano tra 0 e 3 app in media al mese.

Questo significa che le persone occupano un sacco di tempo cercando nuove applicazioni da provare in nell’app store.

Stanno spendendo molto tempo sul Web, dove, invece, potrebbero scoprire e utilizzare la tua applicazione.

Progressive Web App (PWA) sono come le altre Web App, ma quando l’utente ritorna all’App dimostrando di essere interessato, il browser inviterà l’utente ad installare l’app sulla sua schermata iniziale.

La PWA può anche utilizzare le Push Notiications (notifiche sullo schermo), come le App Native.

Proprio come ogni app nativa, le PWA avranno la loro propria icona sulla schermata iniziale.

Quando tu clicchi su, l’applicazione verrà eseguita senza il browser Chrome.

Questo significa nessuna barra delle URL e nessuna interfaccia utente della navigazione sul Web.

La tua app in tutta la sua gloria praticamente a schermo intero.

Questo è stato per lungo tempo sperato.

Nessuna tecnologia è particolarmente nuova con una notevole eccezione dello standard multi piattaforma emergente.

 

Un po’ di storia

Nei primi giorni dell’iPhone, non c’era un App Store.

Steve Jobs voleva sviluppatori per costruire app usando le tecnologie standard del Web.

Questo è il punto di partenza della storia che vede le App Native vs Web App.

A volte i visionari sono presenti fra noi, ma sono dieci anni avanti il loro tempo.

Guardando indietro di due anni, la raccomandazione di Steve Jobs di sviluppare Web App per l’iPhone fu definita il suo “Più grande sbaglio” dalla rivista statunitense Forbes, perché le applicazioni native diventavano un formidabile successo.

Tornando ad oggi, sembra ovvio che lui era veramente su qualcosa – appena più avanti degli standard tecnologici di oggi.

Dieci anni più tardi, gli standard per lo sviluppo Web mobile hanno molte caratteristiche che si trovano nelle App Native, e l’originale visione di Steve Jobs delle Web App, per il mobile, ora viene avvalorata dal resto del mondo.

Apple ha supportato “apple-mobile-web-capable” web app che puoi aggiungere alla schermata iniziale quasi dall’inizio usando meta tags che aiutano i dispositivi iOS a trattarle come giuste icone.

Altri, seguendo l’esempio, hanno fornito la collezione di meta tags per dimostrare le capacità delle Web app, ma recentemente, una specifica per le Cross-Platform è stata introdotta, e ora, le Cross-Platform web mobile app sono finalmente diventate reali.

Queste app sviluppate con gli standard Cross-Platform sono chiamate Progressive Web App, non più confuse con termini come Ottimizzazione Progressive  o Responsive App.

 

Cosa sono le Progressive Web App?

Progressive web app sono proprio applicazioni web progettate per il mobile. Se il browser vede che l’utente vuole continuare ad usare l’app, può richiedere all’utente di installare sulla sua schermata principale, dock, etc… Al fine di qualificarle, però esse devono beneficiare di specifici criteri:

  • Devono utilizzare HTTPS (vedi let’s encrypt);
  • Validare le proprietà richieste dal manifesto (Web Manifest Validator);
  • Devono avere un service worker;
  • Il manifesto start_url deve essere sempre caricato, anche offline (usando service worker);
  • Deve fornire una propria navigazione;
  • Dovrebbero essere responsive alle differenti risoluzione dello schermo e orientazioni del dispositivo.

Sicuramente, usare HTTPS e un service worker per utenti offline è proprio una buona pratica per le moderne app.

Quel che molte app builder sembrano dimenticare è che se costruisci una web progressive app, devi poter utilizzare l’applicazione senza il browser Chrome e senza le gestures del browser. Il dispositivo mobile suppone che tu abbia sviluppato la tua propria navigazione nell’app.

Per esempio, se hai una about page (una pagina di informazioni generiche) questa pagina deve avere una link indietro alla pagina principale dell’app, o gli utenti dovranno chiudere e riaprire l’app per ritornare alla pagina principale dell’app.

App Native vs Web App, questa è solo una INTRODUZIONE

Fonte: Eric Elliott