Qualche considerazione sulla diatriba Silverlight - HTML5

Print Content | More

Silverlight

Durante la PDC di quest’anno sono iniziate a circolare numerose voci sulla fine di Silverlight: tutto è nato da un’intervista a Bob Muglia, presidente della divisione Servers & Tools di Microsoft, in cui si evidenzia come la strategia della casa di Redmond su Silverlight sia sempre più rivolta al mobile (nello specifico, a Windows Phone). Per quanto riguarda il web, il futuro verso il quale vuole tendere Microsoft è HTML5. Potete leggere l’intervista completa su ZDNet.

Dopo la pubblicazione di questa intervista, sui principali siti di settore nonchè sui vari social network sono iniziati a comparire dei veri e proprio necrologi: tutti erano pronti a dichiare che Silverlight è una tecnologia morta, che è inutile perderci tempo, che l’HTML5 risolverà tutti i problemi di interoperabilità e così via.

Sono convinto anche io che HTML5, per quanto riguarda il web, sia la tecnologia del futuro, grazie alle enormi potenzialità. Trovo però che dichiarare Silverlight una tecnologia morta sia un po’ prematuro: si è parlato tanto di questo argomento nelle ultime settimane, mi permetto perciò di fare solo qualche considerazione sul perchè sia prematuro piuttosto che su quale sia la strategia di Microsoft su Silverlight.

HTML5 è un draft

HTML5 in questo momento non è uno standard, ma una bozza: il W3C ha già detto che ci vorranno anni prima di arrivare ad una specifica standard. Questo vuol dire che tutto può cambiare, che per assurdo HTML5 potrebbe essere anche un fallimento e non vedere mai la luce. Sicuramente non sarà così, grazie agli investimenti che tante software house come Microsoft e Apple stanno facendo in questa direzione, però trattandosi per appunto di una bozza non è ancora una tecnologia su cui si può già fare affidamento al 100%.

HTML5 non ha un’implementazione standard

Allo stato attuale, l’implementazione di HTML5 dei vari browser è tutto fuorchè uno standard: basta vedere le demo che Microsoft e Google hanno rilasciato negli ultimi mesi, che funzionano in maniera corretta solo sui rispettivi browser. Un altro esempio è la tecnologia che Apple ha iniziato ad utilizzare per lo streaming live dei propri eventi, che attualmente funziona solo su Safari su Mac o sui device mobile Apple. Una tecnologia basata su plugin come Flash o Silverlight soffre il problema di aver bisogno di un qualcosa di “esterno” al browser per funzionare correttamente, ma consente un funzionamento uniforme dell’applicazione su tutti i browser e sistemi operativi.

Senza dimenticare, infine, che attualmente il browser più diffuso al mondo, ovvero Internet Explorer 8, non supporta HTML5.

HTML5 non è la soluzione a tutte le esigenze

Allo stato attuale, ci sono tantissime situazioni in cui HTML5 non può sopperire all’uso di Silverlight. Pensiamo ad esempio alla riproduzione video: HTML5 ci permette di inserire contenuti multimediali nella nostra pagina con sforzo minimo senza l’ausilio di plugin, ma solo se si tratta di un semplice video da riprodurre. Qualsiasi scenario più avanzato non è supportato: DRM, full screen, streaming live e adaptive streaming. Pensiamo al player presente sul sito Rai.Tv, oppure a quello utilizzato nel corso della PDC2010 per la trasmissione in streaming del keynote e delle sessioni: realizzare uno scenario simile con HTML5 sarebbe in questo momento impossibile.

HTML5 non ha tool di sviluppo

In questo momento, HTML5 non ha dei tool di sviluppo seri nè per i designer nè per gli sviluppatori. Le potenzialità di HTML5 legate alla grafica e alle animazioni sono incredibili: in questo momento i designer si troverebbero però nella condizione di dover scrivere a mano il codice HTML, CSS  e Javascript per realizzarle, al contrario di quanto avviene adesso con Silverlight e Flash, che mettono a disposizione degli ambienti visuali più adatti allo scopo.

Gli sviluppatori, da parte loro, in questo momento non hanno a disposizione dei tool seri per il testing e il debugging: se avete mai provato a lavorare con l’HTML e con Javascript, saprete meglio di me quanto sia complesso fare debug e scoprire gli errori che impediscono alla pagina di funzionare correttamente. Con Silverlight, invece, lavoriamo direttamente con Visual Studio e possiamo sfruttarne appieno tutte le potenzialità: unit testing, debug, breakpoint, watches sono solo alcuni degli esempi più comuni.

internet-explorer-9

Silverlight non è solo web

Quanto detto da Bob Muglia in realtà non è una novità: già negli ultimi anni Silverlight ha dimostrato di essere una tecnologia non solo per il web. Grazie all’introduzione della funzionalità out-of-browser, sono sempre di più gli sviluppatori che hanno iniziato ad usare Silverlight per realizzare applicazioni che potessero funzionare sia sul web che sul desktop. Pensiamo a Seesmic, celebre client per social network disponibile sia sul web, che come applicazione stand alone che come applicazione mobile, il tutto realizzato con la medesima tecnologia. Anche in Gaia abbiamo utilizzato Silverlight per la realizzazione di diverse applicazioni in cui il web viene solamente utilizzato come “piattaforma di distribuzione”: in realtà, si tratta di applicazioni RIA vere e proprie, che possono essere tranquillamente equiparate ad un’applicazione dekstop tradizionale.

In conclusione

L’HTML5 è una tecnologia decisamente promettente e il fatto che una grande software house come Microsoft abbia deciso di investire così tanto in questa direzione è sicuramente un’ottima cosa: sono sicuro che nel giro di qualche anno inizieremo a vedere tool e tecnologie che renderanno l’approccio con HTML5 più agevole sia per i designer che per gli sviluppatori. Fino a quel momento, e fino a quando HTML5 non diventerà uno standard, tecnologie come Silverlight e Flash continueranno ad essere fondamentali in molti scenari, in virtù di tutte le considerazioni che ho fatto in questo post.

Se volete leggere un parere sicuramente più autorevole del mio, vi consiglio questo post  di Laurent Bignion, MVP su Silverlight, nonchè realizzatore del celebre MVVM Light Toolit (una delle librerie più diffuse che semplifica l’implementazione del pattern MVVM nelle applicazioni Silverlight, WPF e WP7).

Infine, anche alcuni autorevoli personaggi del mondo Microsoft hanno preso posizione: lo stesso Bob Muglia ha pubblicato un post di chiarimento all’intervista sul blog del team di sviluppo di Silverlight, che potete leggere qui. Anche Scott Guthrie ha detto la sua tramite un post sul suo blog. Infine, se volete leggere un commento "ufficiale" Microsoft in Italiano trovate un post sul blog di MSDN Italia a cura di Giuseppe Guerrasio.

Se volete dire la vostra, i commenti al post sono benvenuti Smile


Silverlight , HTML 5

0 comments

Related Post


(will not be published)
(es: http://www.mysite.com)