Progressive Web Apps e il futuro delle app e del web

di , in Progressive Web Apps,

Recentemente si fa un grande parlare di Progressive Web App, noto come PWA. Ma di cosa si tratta esattamente? Proviamo a mettere ordine ad un po' di cose che probabilmente avrete già approfondito su questo tema.

Chi segue da vicino lo sviluppo web, specie legato ai temi del front-end, sa che, con la spinta arrivata in seguito ad HTML5, il web è ritornato centrale nella strategia di quasi tutte le aziende. D'altra parte, costruire applicazioni web è un investimento a colpo sicuro: facilmente aggiornabili e manutenibili, le applicazioni web sono diventate popolari negli ultimi 20 anni proprio per la loro natura.

Prima dell'onda legata ad HTML5, la cui forza non si è ancora arrestata, sviluppare applicazioni web cross-browser e cross-platform era molto complesso. 10 anni fa, d'altra parte, iOS e Android erano ancora in una fase embrionale e la navigazione era quasi fatta tutta da desktop. Oggi, la navigazione in mobilità ha superato di gran lunga quella non-mobile e quindi il terreno è cambiato. Logico, 10 anni fa, pensare che fosse più facile sviluppare un'applicazione desktop per Windows o, al limite, sfruttare i plugin per distribuire l'applicazione con il browser, come Silverlight o Flash hanno consentivo di fare.

Per fortuna, le tecnologie intorno ad HTML5 e al web si sono evolute di pari passo e oggi assistiamo ad un fenomeno nuovo, che ha rimesso al centro gli standard e favorito lo sviluppo.

Fenomenologia di un movimento

Negli ultimi 10 anni, quindi, per noi è diventato scontato fare nel web quello che prima si faceva in applicazioni desktop: le stesse applicazioni di Office, sia fatte da Microsoft, sia nella versione di Google, sono disponibili via web. È scontato parlare con altri via Messenger, compilare la nostra nota spese nel gestionale web della nostra azienda, ascoltare la musica via web, con YouTube, o controllare le news su Twitter. In una prima ondata ci siamo limitati ad esporre magari solo endpoint via web (con servizi REST), mentre in una seconda abbiamo iniziato a spostare interi workload su questo ambito.

10 o 20 anni fa queste stesse cose sarebbero state confinate ad applicazioni (e protocolli) ad hoc, in modi differenti (applicazioni desktop o app mobile). Oggi, anche se i sistemi operativi mobile sono solo 2, il costo di mantenere entrambe le versioni di un'app è troppo elevato e si cercano soluzioni alternative.

Sono da sempre uno sviluppatore web: ho iniziato 20 anni fa a sviluppare applicazioni web e, pur con alcune, normali deviazioni verso altri lidi (Silverlight, WPF e Universal Windows Platform) sono sempre stato maggiormente affascinato dai temi legati a questo ambito.

Per me, JavaScript non è mai stato un peso e la sua caratteristica di essere così espressivo, in così poche righe ha subito attirato la mia attenzione. Costruire applicazioni web senza conoscere HTML, CSS e JavaScript, anche se siamo sviluppatori di back-end, non è mai stata, per me, una possibilità. Negli anni, quindi, mi sono sempre dedicato a tutte le novità legate al web. Se, anche voi, come me, siete di full stack developer, cioè fate sia la parte di back-end che quella di front-end di un'applicazione, oppure siete dei front-end developer puri, è inutile ricordavi che negli ultimi 5 anni le specifiche a corredo di HTML5 sono diventate sempre più supportate da tutti i browser, tanto che oggi è praticamente certo che, a parte rari e specifici casi, una direttiva di CSS o una chiamata JavaScript funzionano bene tanto quanto su Chrome, tanto quanto su Edge, Firefox, Opera o Safari. Il web, insomma, è veramente diventato cross-platform e cross-browser.

PWA non è nient'altro che l'espressione di questa evoluzione.

5 pagine in totale: 1 2 3 4 5
Contenuti dell'articolo

Commenti

Visualizza/aggiungi commenti

Progressive Web Apps e il futuro delle app e del web 1010 5
| Condividi su: Twitter, Facebook, LinkedIn, Google+

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti