Spring GDS 25è Aniversari
Una empresa de logística que envia a 190 països va construir alguna cosa per enviar-se a si mateixa.
Un service worker és un script que el navegador executa en segon pla, separat de la pàgina web, actuant com un proxy programable entre la pàgina i la xarxa. Com que se situa en aquesta posició, pot interceptar les peticions de xarxa i decidir com respondre-les: des de la xarxa, des d'una caché que controla, o una barreja de totes dues. Corre fins i tot quan la pàgina està tancada, que és el que fa possible el comportament en segon pla a la web.
És el motor darrere de les Progressive Web Apps. Un service worker és el que permet a una web app continuar funcionant sense connexió, servint pàgines i recursos en caché quan la xarxa desapareix. Impulsa les notificacions push, deixa que l'app sincronitzi dades en segon pla quan torna la connexió i dóna al desenvolupador control fi sobre les estratègies de caché. Una PWA de notícies, per exemple, pot fer servir un service worker per posar en caché els últims articles i que un viatger pugui continuar llegint quan el tren s'endinsa en un túnel.
Ve amb regles estrictes. Els service workers només corren sobre HTTPS, per seguretat, i tenen un cicle de vida definit d'instal·lació, activació i fetch que cal manejar bé o serveixes contingut obsolet als usuaris. El cacheig és potent i fàcil de fer malament. Ben fet, la pàgina se sent instantània i sobreviu a una connexió caiguda. Fet amb descuit, els usuaris reben recursos vells i es pregunten per què no s'actualitza res.
Construïm amb service workers quan un projecte necessita de debò el que ofereixen: ús offline, càrregues repetides instantànies o push. Un client el personal de camp del qual treballava en llocs amb cobertura irregular necessitava que la seva eina continués funcionant passés el que passés. Vam construir un service worker que posava en caché l'app shell i les dades de les quals depenien aquests usuaris, perquè l'experiència aguantés quan la connexió no, i després sincronitzés net tan bon punt tornava.
L'estratègia de caché és on la feina amb service workers es guanya o es perd, així que tractem el cicle de vida i les regles de caché com una cosa a dissenyar, no a afegir a posteriori. En el nostre desenvolupament web i d'aplicacions web progressives, això vol dir decidir de manera deliberada què posar en caché, quan refrescar-ho i com arriben les actualitzacions a l'usuari, perquè ningú acabi mirant una pantalla obsoleta. Comportament offline fiable, i sense sorpreses quan es publica contingut nou.
Necessites una web app que funcioni quan la connexió no? Construïm-la per aguantar offline.
Una empresa de logística que envia a 190 països va construir alguna cosa per enviar-se a si mateixa.
Convertir una marca en un negoci que funciona.
Mig milió de persones. Una app. Zero caos.















