Il supporto di Internet Explorer 10 alle WebApp offline

Il supporto di Internet Explorer 10 alle WebApp offline

Il confine tra applicazione client e servizio Web va annullandosi con il passare del tempo e i browser moderni si adeguano alle nuove esigenze, aprendo la strada a grandi potenzialità.

di pubblicato il nel canale Web
 

Non per forza online

Negli ultimi anni le modalità di accesso ai nostri dati e documenti sono mutate considerevolmente, nel bene e nel male, grazie all’esplosione del fenomeno del cloud computing. I siti Internet maggiormente usati non sono più delle semplici pagine HTML, ma si tratta di applicazioni estremamente complesse, capaci di sostituire spesso i più comuni applicativi client come la posta elettronica, l’album di foto, o addirittura intere suite di applicazioni da ufficio.

Il prossimo step evolutivo, ormai pienamente in atto, delle cosiddette Web Application è quello di integrarsi sempre più con i dispositivi client, rendendo sempre meno netto il confine tra applicazione client e servizio Web. Un passo ulteriore in questa direzione è dato dai meccanismi di storage locale introdotti con HTML5, il cui scopo è quello di consentire l’uso di servizi cloud anche a computer disconnesso, entro certi limiti ovviamente.

Uno dei primi meccanismi, introdotto molti anni fa, addirittura a partire da Internet Explorer 5, era userData Behavior, che consentiva di memorizzare lato client un dizionario di alcune decine di KB (una struttura dati formata da coppie chiave-valore). Successivamente venne creato lo standard DOM Storage, che venne implementato su browser più moderni come Internet Explorer 8, Mozilla Firefox, Safari 4, Chrome, ecc... Lo scopo era molto simile, ma forniva un’API più completa e soprattutto standardizzata.

Oggi abbiamo a disposizione nuovi strumenti più potenti, che si affiancano a DOM Storage quando i dati da memorizzare sono più complessi di un semplice dizionario, e parliamo di AppCache e IndexedDB. AppCache si comporta come un livello di cache trasparente, che si occupa di scaricare localmente tutte le risorse utili per la navigazione di contenuti offline. L’elenco delle risorse necessarie viene specificato dal server tramite un Manifest, cioè un file di configurazione contenente tutti i dettagli circa le URL da salvare in cache e altri parametri.

AppCache, a differenza del normale livello di caching (a basso livello) offerto da HTTP Cache, consente di risolvere correttamente le URL, usando le informazioni presenti nel Manifest, e più che sostituirlo si integra con esso, sfruttandone le caratteristiche per migliorare ulteriormente le prestazioni.

Inoltre consente di salvare una istantanea coerente dei dati, mediante un meccanismo di verifica dell’integrità degli stessi. Infatti se uno dei file specificati nel Manifest non venisse scaricato correttamente, App Cache renderebbe invalida tutta la base dati, evitando così la presentazione di dati corrotti all’utente.

IndexedDB, introdotto con IE10, fornisce un’API avanzata per la manipolazione di dati strutturati sotto forma di Database transazionale. Lo sviluppatore può infatti eseguire delle query complesse sui dati, manipolarli e gestirli in molti modi per far sì che la propria Web Application offra delle funzionalità interattive anche in offline, dove invece App Cache si limita alla presentazione di contenuti statici.

In una moderna Web Application, che sia un classico sito internet, un gioco oppure un’applicazione Windows 8 realizzata in Javascript e HTML5, è così possibile generare nuovi contenuti, fare ricerche, modificare e cancellare dati e documenti anche in assenza di connessione al server.

Una volta ristabilita la connettività, la Web App locale può comunicare con il cloud tramite WebSocket e sincronizzare i dati del DB locale, serializzandoli opportunamente in formato XML o JSON.

http://www.w3.org/TR/IndexedDB/

http://blogs.msdn.com/b/ie/archive/2011/09/27/building-offline-experiences-with-html5-appcache-and-indexeddb.aspx

http://msdn.microsoft.com/en-us/library/ie/hh673546(v=vs.85).aspx

http://www.codeproject.com/Articles/325135/Getting-Started-with-IndexedDB

5 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - info
FedNat16 Luglio 2013, 11:03 #1
Scusate, ma qual'è il senso di questo articolo???

Vengono presentati molto superficialmente in una mezza paginetta due strumenti per la gestione di wep app offline.

Leggendo l'articolo si ha l'impressione che tali strumenti siano una feature di ie10. Poi facendo una rapida ricerca risulta che IndexedDB è un candidate recommendation del W3C proposto inizialmente da Oracle mentre AppCache è una feature di HTML5 e chiaramente sembrano essere supportati anche da tutti gli altri browser.

Sinceramente è da tempo che noto su HWU un'eccessiva attenzione verso ie, win8 e Microsoft in generale.

Sono sempre più portato a dubitare riguardo l'imparzialità del sito e la cosa mi dispiace

Saluti
david8516 Luglio 2013, 11:15 #2
Allora, escono 2 o 3 articoli di Apple in un giorno e dicono che HW è pro Apple, escono più di 3 articoli al giorno su Nokia e dicono che HW è pro Nokia, e la stessa cosa vale per Samsung, Microsof, HP e compagnia bella!

Insomma sostenitori dell'imparzialità e dei pro marchio, decidetevi un pò
Aenil16 Luglio 2013, 11:34 #3
Originariamente inviato da: FedNat
Scusate, ma qual'è il senso di questo articolo???

Vengono presentati molto superficialmente in una mezza paginetta due strumenti per la gestione di wep app offline.

Leggendo l'articolo si ha l'impressione che tali strumenti siano una feature di ie10. Poi facendo una rapida ricerca risulta che IndexedDB è un candidate recommendation del W3C proposto inizialmente da Oracle mentre AppCache è una feature di HTML5 e chiaramente sembrano essere supportati anche da tutti gli altri browser.

Sinceramente è da tempo che noto su HWU un'eccessiva attenzione verso ie, win8 e Microsoft in generale.

Sono sempre più portato a dubitare riguardo l'imparzialità del sito e la cosa mi dispiace

Saluti


hanno chiaramente una collaborazione con M$ e fanno questi speciali su IE, non ci vedo nulla di strano..
Piccioneviaggiatore16 Luglio 2013, 13:26 #4
Assolutamente nulla di strano.
L'unica mia domanda...ma e' una domanda che faccio a me stesso....
una persona sana di mente,puo' non utilizzare un browser alternativo?
certo che M$ ultimamente va a gonfie vele con i suoi prodotti!
Rubberick17 Luglio 2013, 02:55 #5
io continuo a trovarmi benissimo con firefox che che ne dicano..

le cose vanno a momenti chi cambia browser ogni 5 minuti perchè è + veloce questo o quello a renderizzare...

il fire con le giuste estensioni lo trovo sempre la scelta migliore...

cmq con lo store locale ci sono una valanga di standard diversi che stanno provando a menare in mezzo e c'e' da perdercisi...

ma non era + pratico implementare direttamente sqlite maneggiabile via javascript con un layer di astrazione semplificato per la caching?

Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".

La discussione è consultabile anche qui, sul forum.
 
^