Alessandro Del Sole's Blog

{ A programming space about Microsoft® .NET® }
posts - 1908, comments - 2047, trackbacks - 352

My Links

News

Your host

This is me! Questo spazio è dedicato a Microsoft® .NET®, di cui sono molto appassionato :-)

Cookie e Privacy

Disabilita cookie ShinyStat

Microsoft MVP

My MVP Profile

Microsoft Certified Professional

Microsoft Specialist

Xamarin Certified Mobile Developer

Il mio libro su VB 2015!

Pre-ordina il mio libro su VB 2015 Pre-ordina il mio libro "Visual Basic 2015 Unleashed". Clicca sulla copertina per informazioni!

Il mio libro su WPF 4.5.1!

Clicca sulla copertina per informazioni! E' uscito il mio libro "Programmare con WPF 4.5.1". Clicca sulla copertina per informazioni!

These postings are provided 'AS IS' for entertainment purposes only with absolutely no warranty expressed or implied and confer no rights.
If you're not an Italian user, please visit my English blog

Le vostre visite

I'm a VB!

Guarda la mia intervista a Seattle

Follow me on Twitter!

Altri spazi

GitHub
I miei progetti open-source su GitHub

Article Categories

Archives

Post Categories

Image Galleries

Privacy Policy

Windows 8, Metro, Desktop. Qualche riflessione da un appassionato

Windows 8 è attualmente disponibile in Consumer Preview, una Beta sostanzialmente. Io l'ho installata a partire dal 29 febbraio su tutti i miei pc fisici, senza virtual machine, superando, di fatto, Windows 7.

Me lo godo ancora di più perchè a casa ho un monitor multi-touch da 23" ed è uno spettacolo. Ci sono sentimenti contrastanti nei riguardi di Windows 8 e Metro, in particolare. C'è chi li teme, chi li adora, chi li ritiene un futuro successo, chi non la pensa così. Sicuramente c'è molto interesse intorno a Windows 8 e questo è indubbiamente positivo.

In questo post voglio fare qualche riflessione a voce alta, senza andare troppo nel tecnico, sul perché io ci vedo del gran buono in tutto ciò che è in preparazione e che arriverà.

Parliamo di Windows 7

Così, tanto per dire, Windows 7 è un sistema operativo che supporta il multi-touch. E benché nel pensiero comune tablet = iPad, in realtà Windows 7 funziona anche su molti tablet. Non nasce per i tablet, ma diversi lo supportano. Che poi questo non vada di moda, è un'altra storia. Ma dovrebbe essere già un ottimo spunto di riflessione sul fatto che applicazioni esistenti con determinate caratteristiche possano andare su un device con sistema Microsoft.

Precisazione: laddove in questo post parlerò di seguire le mode di chi usa iPhone o iPad, non mi riferisco ovviamente a tecnici, sviluppatori o chi, comunque, fa di quei dispositivi il proprio business in tutto o in parte.

Cos'è Metro

Metro è un design-language attraverso il quale viene disegnata l'interfaccia utente. Metro si ispira a principi di astrazione, essenzialità e geometria. L'amico Alessandro Scardova ha un gran bel post sulla storia e i principi di ispirazione di Metro che vi consiglio di leggere. L'obiettivo di Metro è quello di rendere l'interfaccia utente semplice ed essenziale, ponendo al centro dell'attenzione le esigenze dell'utente, ma senza troppi orpelli o conformazioni che possano essere di confusione.

Metro in Windows 8

Windows 8 introduce Metro per la prima volta su un sistema operativo che non sia solo quello di un device (come già precedentemente per Windows Phone) e porterà Metro sui pc di tutti noi (potenzialmente ). Ora, Windows 8 non è solo Metro. Windows 8 è Metro + Desktop. Di quest'ultimo parlerò più avanti, mi soffermo per ora su Metro.

Metro è quindi una delle due possibilità di utilizzo di Windows 8:

Non siamo quindi obbligati ad usare Metro sempre e comunque nè ci verrà richiesto dalle applicazioni. Da un punto di vista meno spinto, possiamo pensare a Metro come (ma non limitato ad essere) la parte consumer e di intrattenimento di Windows 8. La consumer preview ci dà un'idea di questo attraverso una serie di app pre-installate. Banalmente messaggistica integrata con i social network, visualizzazione di documenti, live tile come su Windows Phone, notifiche toast, mappe, musica, multimedia, SkyDrive. Conoscete iCloud ma non il ben più anziano e longevo SkyDrive? Non sapete che con un account di posta elettronica su Hotmail (gratuito) potete avere 25 giga di spazio di archiviazione gratis + 5 giga di spazio sincronizzato gratis + Office online per avere i vostri documenti sempre e comunque, sempre gratis? Molto male. Informatevi su cosa vi state perdendo!

La parte Metro di Windows 8 richiama, senza ombra di dubbio, la UI di Windows Phone 7.x. Ed è altrettanto evidente che, per questa sua natura, Metro ha come obiettivo i tablet. Sempre richiamando la filosofia di Windows Phone (ma non solo, in effetti) Metro consentirà il download di app dallo Store di Microsoft. Lo Store è già testabile in questa consumer preview, sebbene uno store italiano non sia ancora attivo ma potete testare quello globale scaricando delle app per capire come funziona.

La previsione è quella di avere un'infinità di app per Windows che possono fare qualunque cosa. Dal meteo, alla finanza, allo sport, ai viaggi, ecc. ecc. ecc. Il che, per gli sviluppatori, si chiama "nuova opportunità di business".

In tutto questo non ho menzionato la parola "business" o "gestionale" o "business applications". Non che Metro non permetta di interagire con fonti dati, anzi! Ma c'è dell'altro: il famoso Desktop.

Sviluppare app per Metro su Windows 8

Chiariamo un concetto: Metro non abolisce nulla, semmai integra. Quindi Metro non impone di riscrivere le applicazioni nè impone di sviluppare solo ed esclusivamente per questa parte di Windows 8. Metro ha delle specificità ben definite ma non solo: è particolarmente educato da consentire a sviluppatori con esperienza in WPF & Silverlight di reinvestire le proprie conoscenze offrendo paradigmi basati su XAML + VB/C#, riadattandole al neonato Windows Runtime (WinRT).

Non solo, apre le porte in modo nativo a sviluppatori HTML e Java. Non tutti gli altri produttori sono così aperti...

O forse stavolta sarà la volta buona che saremo finalmente costretti a ragionare per servizi.

Il Desktop NON è morto, Viva il Desktop

L'altra "parte" di Windows 8 è il Desktop che altro non è che la consueta modalità con cui siamo abituati ad utilizzare Windows da sempre:

Per passare da Metro a Desktop e viceversa è sufficiente un click e mentre cambiamo modalità, nell'altra le applicazioni rimarranno in essere.

Il Desktop non è affatto morto, anzi è vivo e vegeto. Le applicazioni che normalmente usiamo oggi gireranno in questa modalità, quindi non cambia assolutamente nulla. Se siamo sviluppatori, WPF rimane la "premier technology" per scrivere applicazioni per Windows e ne ho dato dimostrazione alla mia sessione ai Community Days 2012 introducendo le novità di WPF 4.5.

Gli stessi linguaggi di programmazione hanno introdotto paradigmi (uno su tutti Async) che trovano il loro naturale utilizzo in Metro, ma che rimangono totalmente fruibili sul Desktop.

Le applicazioni che abbiamo oggi, gireranno sul desktop. Le applicazioni che abbiamo scritto, gireranno sul Desktop. I nostri gestionali gireranno ancora sul Desktop. Sarà per il Desktop che scriveremo, infatti, questo tipo di applicazioni. Non è un caso, poi, che il Runtime ridistribuibile di Visual Basic 6 sia incluso nel sistema.

Cosa dobbiamo temere, quindi? Una risposta nel paragrafo successivo.

"Eh, ma io fino a ieri avevo il menu Start"

In molti casi ci si domanda come un utente domestico o come l'operatore informatico in azienda dovrà fare nell'affrontare la mancanza del menu Start, utilizzato a partire da Windows 95, o ad approcciare la nuova interfaccia di Windows.

In informatica le svolte epocali ci sono sempre state. In MS-DOS non c'era Start. In Windows 3.1 non c'era Start. Eppure con Windows 95 ci si è abituati a tanti cambiamenti. Windows 8 non ha Start, ma le applicazioni non sono sparite. Premesso che i collegamenti sul Desktop continueranno a sopravvivere (e vedo normalmente display con migliaia di icone sopra), se sei in Metro e fai click destro, hai poi un pulsante per accedere all'elenco delle applicazioni, suddivise nei consueti gruppi:

Solo che i gruppi sono organizzati su tutta la superficie dello schermo, invece che in un menu. Se sei nel Desktop, basta utilizzare la funzionalità di ricerca (o, se siete pigri, switchare a Metro, roba di tre click in tutto).

Ci sono in compenso tanti miglioramenti. Prova a copiare un file di un giga con Windows 7 e lo stesso file con Windows 8. La differenza in termini di tempo impiegato è netta.

D'altra parte quando ti sei comprato un iPad o un iPhone, non hai dovuto imparare a muoverti in un mondo diverso da Windows e Windows Mobile? Ok, i device con la mela sono la moda, ma il concetto non cambia.

"Eh, ma l'iPad… e se voglio applicazioni business che girano su tablet con Windows 8..."

Fatemi togliere un sassolino da una scarpa. Fate una banalissima ricerca su Wikipedia, soprattutto se siete giovanissimi, e ricorderete subito che i primi tablet della storia avevano su una cosa chiamata Windows XP.

Detto questo, non voglio togliere a Cesare quel che è di Cesare e sicuramente i signori della frutta ci hanno visto molto lungo e hanno saputo capire come certe esigenze di mercato andavano evolvendo. Ora, non si sente altro che parlare un gran bene degli iPad e di molti dubbi nei confronti di tablet con Windows 8 (si, non c'è la mela sopra in questo caso). 

Proviamo a fare una considerazione, che deriva da qualche chiacchierata che ho avuto con persone a capo di aziende. Supponiamo che un'azienda voglia prendere dei tablet per la gestione di qualunque dato o magazzino.

Supponiamo che l'azienda dica: ho dovuto prendere l'iPad perché non c'erano alternative. Supponiamo che non è vero perché già Windows 7 gira sui tablet e supporta il multi-touch e ipotizziamo che girare con l'iPad ti dia un tono diverso. Ipotizziamo, quindi, che il gestionale esistente avrebbe dovuto subire determinate modifiche per girare in modo decente su un tablet con Windows 7 ma che ciò non è stato possibile.

Supponiamo che la citata azienda, optando per l'iPad, abbia dovuto investire fior di quattrini per farsi (ri)fare delle applicazioni su misura per iOS o per formare degli sviluppatori. Dicono che sviluppare per questi sistemi, anche solo a livello di IDE, sia "leggermente" peggio che farlo per Windows e affini. Supponiamo che tali applicazioni devono interagire con strutture a base Microsoft o di altri.

Ora il punto, anzi i punti, sono i seguenti: come da sempiterna tradizione, con Windows ti puoi scegliere l'hardware. Ciò implica che, se le esigenze non sono particolarmente avanzate, si possono trovare tablet anche a prezzi inferiori di un iPad. La mela ti obbliga a quell'hardware (e a certi prezzi) e non si scappa. E in realtà questo è un concetto anche domestico, non solo aziendale.

L'altro punto è che se adotti un tablet con Windows 8 e vuoi lavorare su Metro, probabilmente ti costerà meno sviluppare un client fatto apposta per il tablet che vada ad affiancare il gestionale desktop piuttosto che farlo fare su iOS. Non fosse altro che lo sviluppo per questi sistemi non ha la diffusione che hanno altri e quindi la risorsa si fa (giustamente) ben pagare. Un client fatto con Javascript o HTML probabilmente costerebbe meno, se poi uno è .NET dentro… meglio ancora.

Il futuro che vorrei

E' fuori discussione che chiunque al mondo abbia a che fare con dei documenti si ritrova ad utilizzare Office o prodotti con esso compatibili. Windows Phone ha dato dimostrazione di come, con SkyDrive, si possano avere i propri documenti ovunque. Stesso vale per le fotografie, altra cosa di grande interesse. Con Windows 8 sarà così e non si parla solo di documenti. Windows 8, Windows Phone, XBox, pc, telefono, tablet… un mondo interconnesso? Beh, non mi pare sia utopico!

Conclusioni

Tutto questo per dire che:

  • ho sempre sostenuto che Microsoft dovrebbe investire di più in pubblicità che porti i prodotti nelle case, MA....
  • prima di dire che Windows 8 non farà strada, installatelo  e provatelo
  • prima di spaventarvi di Metro, installate le vostre vecchie applicazioni e provatele sul Desktop
  • prima di dire che esiste solo l'iPad, provate Windows 7 e Windows 8 su un tablet

E non dimenticate di scaricare la Beta di Visual Studio 11 che permette di sviluppare per Windows 8!

Alessandro

Print | posted on giovedì 22 marzo 2012 21:06 | Filed Under [ Windows 7 Community and friends ]

Powered by:
Powered By Subtext Powered By ASP.NET