posts - 644, comments - 1982, trackbacks - 137

My Links

News

Raffaele Rialdi website

Su questo sito si trovano i miei articoli, esempi, snippet, tools, etc.

Archives

Post Categories

Image Galleries

Blogs

Links

Windows 8 punta tutto su HTML5, altro che Silverlight o WPF

Il primo video ufficiale appena diffuso su Windows 8 è assolutamente esplicito: la parola d'ordine è HTML5 e Javascript.

http://www.microsoft.com/presspass/features/2011/jun11/06-01corporatenews.aspx

In realtà non è solo il team di Windows a spingere in questa direzione. Avevo già mostrato nelle mie due sessioni su WCF (presentate per UGIdotNET e DotNetLiguria) come i RIA services e le nuove librerie jQuery nella prossima release permetteranno di costruire applicazioni che permettano di non far rimpiangere la UI Silverlight per una grossa maggioranza di applicazioni (ovviamente non per tutte).

Microsoft quindi punta tutto sugli standard anche per la futura shell di Windows che offrirà le sue funzionalità dal classico PC desktop ai nuovi device emergenti, terreno sui cui oggi Microsoft è totalmente assente e che si prepara ad assaltare con il prossimo Windows compilato anche per CPU ARM.

Che la shell attuale di Windows dovesse andare in pensione lo dicevo da tanto tempo (gli amici con cui ero a PDC qualche anno fa ricorderanno che lo dissi durante una open discussion al tavolo della shell di Windows). Con Windows 8 la shell è tile-based, abbracciando i principi di Metro, lo stile grafico di WP7. Dal punto di vista estetico non mi esalta affatto, dal punto di vista della praticità penso che avrà un buon successo.

Touch ma non solo, la grafica basata sulle interfacce naturali ("NUI") sono il motivo portante del nuovo stile e su questo non si può essere che d'accordo. Ovviamente nella futura versione di Windows ci sarà molto di più. Rumors su Twitter e su diversi website indicano un nuovo file system e molte altre novità. Insomma una vera e propria rivoluzione, specie per chi come il sottoscritto scrive applicazioni.

Con tutto ciò non ritengo affatto che Silverlight e WPF debbano accusare alcun colpo. Piuttosto continuo a dire sempre più forte che è venuto il momento di unire queste due tecnologie insieme una volta per tutte e a mio avviso aspettare ancora sarebbe un clamoroso errore.

Una cosa è chiara. Siamo di fronte a una nuova svolta epocale e, contrariamente alla primissima versione di Longhorn che ancora conservo in DVD, questa volta sembra proprio che si faccia sul serio.

Print | posted on Thursday, June 2, 2011 5:11 PM |

Feedback

Gravatar

# re: Windows 8 punta tutto su HTML5, altro che Silverlight o WPF

scelta ottima, può solo che attirare nuovi sviluppatori sulla piattaforma. E con le applicazioni scritte in html+js la migrazione del proprio desktop sul web (datacenter su azure) per poter essere usato su qualsiasi device (e quindi cpu) è alla portata del prossimo win.vNext.
6/2/2011 5:23 PM | Andrea Balducci
Gravatar

# re: Windows 8 punta tutto su HTML5, altro che Silverlight o WPF

Credo che Windows 8 supporterà molte delle tecnologie delle precedenti versioni (ci saranno forse un po' di eccezioni sulla piattaforma ARM, visto che il processing power è ancora al di sotto degli x86 e che molto del codice andrebbe comunque ricompilato) ma, come accade ora su Win7 per applicazioni VB6 o MFC, probabilmente saranno considerate applicazioni "legacy" che potrebbero non funzionare benissimo e non avranno accesso (se non attraverso qualche "trick") alle nuove features.
Credo che tutto si giocherà sull'ambiente di sviluppo, anche perchè aprire a questi standard renderà da un lato le applicazioni più portabili verso un'infrastruttura cloud-based, ma dall'altro anche più facili da portare su altri sistemi operativi (dove un browser in grado di "digerire" HTML5 c'è già).
Tra l'altro questo annuncio fa di windows phone un dead man walking, visto che la sua UI, seppur graficamente simile, è completamente basata su XAML e Silverlight...
Win8 sarà un passaggio fondamentale per MS che deve riprendere terreno e conquistare spazi al di fuori del mondo PC visto che i "PC" come li intendiamo oggi andranno probabilmente a scomparire rapidamente (perlomeno per la maggior parte degli utilizzatori), rimpiazzati da dispositivi più semplici e "leggeri" (e qui avere abbracciato ARM è una mossa furba) connessi alla (per ora mitologica) "cloud" o integrati negli oggetti già di uso comune (dalla TV al navigatore dell'auto).
6/2/2011 6:58 PM | Valter Minute
Gravatar

# re: Windows 8 punta tutto su HTML5, altro che Silverlight o WPF

Raf,
Dal titolo leggo "Windows 8 punta *tutto* su HTML5, *altro* che Silverlight o WPF"
Io da questo ne estraggo una sola chiave di lettura in parte smentita dal contenuto del post, ma si sa che negli aggregatori spesso è solo il titolo ad essere letto...
6/2/2011 7:26 PM | Corrado Cavalli
Gravatar

# re: Windows 8 punta tutto su HTML5, altro che Silverlight o WPF

@Corrado. Lasciami dire che la parola "supportare" che hai scritto nel tuo commento ha un significato totalmente differente da "punta tutto".

La shell è stata all'epoca di Windows 95 l'elemento che più di ogni altro ha spinto Windows a vendite record. Il cambio che ci sarà è di importanza fondamentale e storica.
Il video che hanno mostrato oggi dice in modo inequivocabile che puntano tutto su HTML5 e Javascript, cosa che ho appunto scritto nel titolo.
6/2/2011 7:49 PM | Raffaele Rialdi
Gravatar

# re: Windows 8 punta tutto su HTML5, altro che Silverlight o WPF

Quindi non ero matto quando lo dicevo durante le sessioni :)
Dai Corradone non te la devi prendere. Muglia te l'aveva già detto tempo fa che saresti stato disoccupato :D (scherzo ovviamente)
6/2/2011 8:25 PM | Ugo Lattanzi
Gravatar

# re: Windows 8 punta tutto su HTML5, altro che Silverlight o WPF

BTW Muglia si è meritato il suo destino perché su una tecnologia che piace non si fanno affermazioni di quel genere. Se SL fa il salto di qualità (aka merge con WPF) avrà un roseo futuro.
6/2/2011 8:45 PM | Raffaele Rialdi
Gravatar

# re: Windows 8 punta tutto su HTML5, altro che Silverlight o WPF

@Corradone devi chiederli a Muglia, lo aveva detto lui, non io :P
6/3/2011 9:10 AM | Ugo Lattanzi
Gravatar

# re: Windows 8 punta tutto su HTML5, altro che Silverlight o WPF

Personalmente penso che l'adozione di qualche cosa, come HTML 5, che sia comunque standard è una buona direzione. Staremo a vedere, la cosa che mi piace di più è che finalmente la UI di windows è stata veramente ripensata da zero, cosa che per la maggior parte degli utenti (leggi utenti normali e non tecnici come noi) non può che giovare.

Alla fine molte persone usano solo il browser, social network, tutta la parte multimediale (video, musica, foto) un pochino office per scrivere qualcosa, le mail e poco altro e la nuova interfaccia è veramente interessante.

Attendo con gioia una beta :D
6/3/2011 12:51 PM | Gian Maria
Gravatar

# re: Windows 8 punta tutto su HTML5, altro che Silverlight o WPF

ahaha, "Io continuerò a sviluppare su WP7" lapsus per "Io continuerò a sviluppare su WPF" e comunque confesso di aver sviluppato codice per WP7 perché la curiosità e la geekeria sono la mia essenza :)
6/3/2011 2:40 PM | Raffaele Rialdi
Gravatar

# re: Windows 8 punta tutto su HTML5, altro che Silverlight o WPF

@Stefano. Il solo fatto che Visual Studio sia fatto in WPF dovrebbe essere sufficiente a tranquillizzare le aziende sull'investimento per applicazioni "Full Windows".

Il mercato di SL però è differente. Obiettivamente oggi se devo fare un'applicazione full Windows non rischio a farla in SL ma scelgo WPF per non rischiare di non poter sfruttare anche la più piccola funzionalità. Se anche SL soddisfasse tutti i requisiti sceglierei comunque WPF perché il cliente è sempre pronto a chiedermi quel bit in più che rischia di non essere fattibile in SL.
Invece è vero il contrario. Posso hostare SL in WPF e quindi se ho qualcosa che SL può risolvere in modo semplice, posso sempre farlo.

Sul web e/o app cross-device il discorso è molto diverso. SL non copre la maggioranza degli scenari cosa che Html/jQuery invece possono fare agevolmente. A SL rimane la fettina di mercato tipica dei plugin come lo smooth streaming (il video 'normale' c'è già in html5).

Microsoft per il suo prodotto di punta, quello che fa il fatturato e paga la pagnotta a tutti, Windows insomma, preferisce Html5. Almeno questo è quanto hanno dichiarato in modo inequivocabile in quel video. Ma come scrivevo nel post non sposta nulla sul fronte app se non la sempre crescente necessità di avere il merge di SL e WPF.
6/3/2011 3:13 PM | Raffaele Rialdi
Gravatar

# re: Windows 8 punta tutto su HTML5, altro che Silverlight o WPF

WPF/SL 1000 anni luce oltre html5 e jquery, e chi dice il contratio non ha mai usato WPF
9/13/2011 9:08 PM | miki
Gravatar

# re: Windows 8 punta tutto su HTML5, altro che Silverlight o WPF

Ultima cosa poi mi rimetto al lavoro ;-)
Silverlight tra l'altro può girare tranquillamente anche in pagina PHP e quindi su un server Apache.

Vorrei poi dare ragione a miki riguardo l'HTML5: ho impiegato 3 anni di lavoro per sviluppare la mia applicazione in SL. Onestamente con gli strumenti che ci sono oggi non saprei nemmeno come riscriverla in HTML5/jquery. Sicuramente dovrei lavorare 10 anni (e piuttosto passerei ad Adobe Air) per produrre una cosa decisamente peggiore.

Spero quindi che ti sbagli e che Silverlight viva a lungo e progredisca sempre di più.
9/20/2011 1:25 PM | Roberto Ferro
Gravatar

# re: Windows 8 punta tutto su HTML5, altro che Silverlight o WPF

Ancora una nota quando scrivi:
> Silverlight tra l'altro può girare tranquillamente anche in pagina PHP e quindi su un server Apache

Il server apache e la pagina php si limitano a sparare fuori dei tag <object>, gli script di silverlight e lo XAP. Puoi fare la stessa cosa anche con una app console che parla sui socket sulla porta 80.
Silverlight gira sul client e la parte server è totalmente indifferente.
9/20/2011 9:18 PM | Raffaele Rialdi
Gravatar

# re: Windows 8 punta tutto su HTML5, altro che Silverlight o WPF

Fabrizio, se segui i post su WinRT che sto facendo capirai come funziona.
Per toglierti un briciolo di curiosità nell'immediato, Microsoft ha realizzato un nuovo runtime (Windows Runtime == WinRT) che è un'evoluzione di COM.
WinRT permette di attivare degli oggetti che puoi realizzare sia con linguaggi nativi (C++, javascript) che con quelli managed (C#, VB).

Nel caso specifico di Javascript, uno speciale processo surrogato chiamato WWAHost si prende carico di ricevere le richieste di attivazioni per applicazioni html5 e creare l'ambiente necessario ad ospitare la view html5 e il motore di scripting necessario ad avviare javascript/jquery, etc.

Nel caso di applicazioni C#/VB viene attivato il processo managed che realizzi con il Framework.NET e che utilizza librerie specifiche per l'ambiente Metro/WinRT.

Per Javascript, una volta attivato il processo host, la pagina viene caricata e i normali eventi di caricamento di pagina (+ altri specifici di WinRT) potranno diventare gli entry-point del tuo codice javascript.

Inoltre la pagina javascript può utilizzare tutte le librerie offerte da WinRT, ivi compresi i servizi del sistema operativo e i sensori (webcam, accelerometri, etc.) di cui il 'device' è equipaggiato.

Uno speciale "security broker" si occupa di filtrare le richieste a quegli oggetti (per esempio l'uso della webcam) che necessitano dell'approvazione preventiva dell'utente.

Leggerai tutto il resto sul mio blog ... :)
10/13/2011 2:56 PM | Raffaele Rialdi
Gravatar

# re: Windows 8 punta tutto su HTML5, altro che Silverlight o WPF

Ciao ziotullio, i giochi sono fatti :)
MS ha creato un nuovo Windows Runtime (WinRT) che si basa sui concetti del vecchio COM ma con alcune novità fondamentali:
- nuovo type system
- nuovi metadati (ECMA-335, gli stessi già in uso con il Framework.NET)
ed altre novità per quanto riguarda il modello di threading e delle interfacce di base.
Grazie a tutto questo, le applicazioni Metro vengono attivate come oggetti e non solo più come meri processi.
Questo implica che tutti i linguaggi OOP hanno accesso al Windows Runtime e che a loro volta sono accessibili in modo OOP da altre applicazioni o dallo stesso sistema operativo. I "Contracts" funzionano grazie a questo meccanismo.

Ma saltiamo subito a HTML5.
In caso di attivazione di una applicazione javascript/html5/css3, Windows hosta una superficie di browser dentro uno speciale processo che usa come host Internet Explorer ma che l'utente non vedrà mai che è un browser (a tutti gli effetti lo è solo per le funzionalità e non per la UI). Questo processo espone a javascript la libreria OO del Windows Runtime in modo da poter accedere ai sensori, al file system e a tutto quanto il sistema operativo può offrire.
Dal punto di vista della sicurezza è tutto ok, in quanto solo le funzionalità che sono sicure o soggette a sandboxing possono essere utilizzate, restringendo quindi questo tipo di Applicazioni a quelle tipiche di una UI.

Quindi:
- linguaggi .net ==> xaml + WinRT
- C++ nativo ==> xaml + WinRT
- javascript ==> html5/css3 + WinRT

Per quanto riguarda i "plugin" dei browser (flash, sl, ....). Sono ormai 'morti' nel senso che sia Apple che Microsoft nell'interfaccia Metro li ha bannati. Per l'uso out-of-browser possono ancora essere usati ma mi chiedo quanto ne valga la pena in confronto ad altre tecnologie (vedi WPF per il desktop classico Microsoft) che sono più complete.
Saluti
5/21/2012 4:04 PM | Raffaele Rialdi

Post Comment

Title  
Name  
Email
Url
Comment   
Please add 4 and 2 and type the answer here:

Powered by:
Powered By Subtext Powered By ASP.NET