Windows 8: notifiche unificate ed efficienti per tutti

Microsoft ha illustrato alcuni dettagli sul sistema di notifiche presente in Windows 8. Si potranno avere centinaia di elementi aggiornati in tempo reale su PC, ma un solo processo relativo. I trasferimenti si attiveranno solo quando necessario grazie al sistema push, riducendo i consumi al minimo.

Avatar di Valerio Porcu

a cura di Valerio Porcu

Senior Editor

Gli sviluppatori di Windows 8 hanno spiegato come funzionano le Live Tile e cosa è stato fatto per ottimizzare al meglio il peso sulle prestazioni e quello sull'autonomia. L'azienda ha lavorato a un sistema di notifiche unificato a disposizione degli sviluppatori, che si traduce in un solo processo nel sistema operativo. L'uso di comunicazioni push è un altro elemento che riduce il carico sul sistema.

I riquadri colorati - già noti agli utenti di Windows Phone - possono mostrare le informazioni e gli aggiornamenti di una data applicazione - come posta elettronica, meteo o altro - direttamente a schermo, senza bisogno di aprire effettivamente l'applicazione.  Con Windows 8 le live tile sono il primo elemento che si vede quando si avvia il PC, quindi lo Start Screen diventa un vero e proprio centro notifiche, che offre all'utente più controllo sulle informazioni.

Schema del Windows Push Notification Service

Per ottenere un risultato valido Microsoft ha dovuto lavorare su tre aspetti principali: prestazioni, efficienza energetica e sicurezza. Il primo ostacolo da superare - o eliminare - era la possibilità che ogni applicazione avesse il proprio sistema di notifiche; un'eventualità che avrebbe portato a un caos ingestibile.

"Se pensate all'anatomia di un sistema di notifica, comprende diverse parti" scrive infatti Ryan Haveson sul blog Microsoft. Elementi che includono molta programmazione e diverse parti del computer. Per questo Microsoft ha creato un sistema unificato, che gli sviluppatori possono facilmente integrare nelle proprie applicazioni. In questo modo si riduce il numero di processi attivi, e si preservano le prestazioni.

"La nostra soluzione è stata creare un modello basato sui dati. Questo significa che uno sviluppatore può creare la propria tile usando un set di proprietà e modelli predefiniti, in questo caso con uno schema XML. La tile XML è poi spedita al Windows Push Notification Service (WNS) tramite un semplice HTTP POST, e poi noi ci occupiamo del resto. Tutto il codice per collegarsi, ritentare, autenticarsi, cache, rendering, gestione degli errori e altro è gestito in un modo uniforme ed energeticamente efficiente".

Il metodo Push è una scelta questi obbligata, perché il Polling (il client si collega periodicamente e controlla se ci sono nuovi dati) per dare notifiche in tempo reale richiederebbe aggiornamenti ogni pochi secondi, con un effetto devastante sulla batteria. La notifica quindi "parte" online (per esempio su Facebook), raggiunge il WNS, e da qui lo schermo del computer, tablet o smartphone. In questo modo si ha un consumo di risorse solo quando è effettivamente necessario.

È tuttavia nei dettagli che Microsoft ha trovato il modo di risparmiare più energia. In una notifica, per esempio, si può separare l'informazione dall'immagine mostrata, tenendo quest'ultima in cache -perché non cambia. Così si possono risparmiare 150 KB e trasferire solo 1 KB di informazioni, riducendo di conseguenza il consumo di tutto il sistema.

Quanto alla sicurezza, il sistema WNS è abbinato a uno di autenticazione sicura tra PC e applicazione. Dovrebbe impedire che persone e software possano prendere il controllo di una live tile e mandare al computer elementi pericolosi o illegittimi. Al momento Microsoft sta gestendo circa 90 milioni di notifiche al giorno su Windows 8. Un numero molto alto, se si considera che l'unica versione in circolazione è l'anteprima per sviluppatori.