Tom's Hardware Italia Tom's Hardware
Windows

Windows 10, perché le Universal App non sono universali

Con Windows 10 sono arrivate anche le Universal App, e da qualche tempo ormai ne stanno uscendo molte di nuove e aggiornate. Molti sono stati portati a pensare che ogni singola applicazione funzionerà tanto su desktop quanto su smartphone, Xbox o altro. Questo tuttavia non accade, per alcuni ragioni che non sono del tutto chiare al grande pubblico. Proviamo a spiegarle.

uwp windows 10 apps cropped universal

Gran parte delle spiegazioni sono dettagli comprensibili solo agli sviluppatori, ma possiamo cercare di affrontare l'argomento per sommi capi, partendo dal concetto di Universal Windows Platform, che molti forse hanno visto con la sigla UWP.

UWP è una combinazione del sistema operativo Windows 10 e del relativo SDK. C'è un kernel condiviso, codice di base e API che abbracciano tutto, compresi PC, telefoni, Xbox One, Internet of Things (IoT) e Hololens. Questo sostiene il motto "programma una volta, pubblica ovunque", che tuttavia non è un assoluto.

In primo luogo perché gli sviluppatori possono scegliere dove pubblicare il proprio software. Solo perché è UWP non significa che i programmatori siano obbligati a pubblicare la loro app su Xbox se non vogliono. I programmatori inoltre sono incoraggiati (solo incoraggiati) a modificare il prodotto per adattarlo alle varie piattaforme.

uwp windows 10 apps universal bridges

Questo perché, ovviamente, anche se smartphone e PC condividono lo stesso sistema operativo, schermo e hardware sono molto diversi, e non solo per le dimensioni. La maggior parte dei sistemi desktop per esempio non ha uno schermo touch, e un'app per smartphone potrebbe risultare scomoda o impossibile da usare con mouse e tastiera.

L'Xbox non ha né una cosa né l'altra, ma si affida al joypad per il controllo – un'altra variabile nell'interfaccia di controllo. I telefoni hanno il tasto Indietro, assente sui PC, e la lista potrebbe continuare.

Alle differenze hardware, poi, si aggiungono quelle dell'Interfaccia Grafica: menu, barre degli strumenti, finestre multiple, scorrimenti, pagine e altro; tanti elementi cambiano da una piattaforma all'altra. Ogni piattaforma ha il suo paradigma, e lo sviluppatore che voglia dare all'utente un buon prodotto deve tenerlo in considerazione.

Ancora più importante, uno sviluppatore potrebbe semplicemente desiderare che il suo software funzioni su una piattaforma ma non su un'altra; oppure non è possibile. WhatsApp per esempio richiede la registrazione con un numero di telefono, e Facebook vuole che resti un'app per smartphone prima di tutto – per quanto esista il client web. Queste differenze, tra l'altro, sono rilevabili anche nel Windows Store, dove vediamo diversi numeri di versione per la "stessa" applicazione.

uwp hardware PNG

Ogni sviluppatore, grande o piccolo, è libero di decidere. E Microsoft non obbliga nessuno a realizzare applicazioni che "girino ovunque". L'azienda si limita a rendere il lavoro piuttosto facile per chi vuole fare questo passo.

Realizzare applicazioni che siano davvero universali tra l'altro richiede una grande quantità di lavoro e molte risorse. Per gli sviluppatori più piccoli potrebbe essere semplicemente impossibile creare subito un'app universale, se consideriamo che persino la stessa Microsoft ha posticipato alcuni dettagli: per esempio lo streaming dei videogiochi non c'è ancora sugli smartphone.

"Sarebbe bello se la programmazione avesse letteralmente un bottone per pubblicare ovunque in un colpo solo, ma almeno oggi non è semplicemente possibile". Tuttavia ci stiamo muovendo (rapidamente) verso un mondo dominato da dispositivi mobile potenti e versatili, come i Surface, e con il tempo le differenze hardware tra PC e telefono tenderanno a sparire. Quando ciò accadrà, Windows 10 sarà pronto ad armonizzare tutto.

Per il momento, ricordate che una Universal App non significa automaticamente che l'applicazione sia ovunque dal primo giorno, o che dovrebbe esserlo. Dipende dagli sviluppatori, ognuno dei quali segue la propria agenda e le proprie priorità. 

Surface Pro 4 128G Surface Pro 4 128G
  

Surface Pro 4 256GB 3G Surface Pro 4 256GB 3G
  

Surface Pro 3 512GB Surface Pro 3 512GB