難しいことではあったが、私たちはSilverlightの死についての噂を長い間記事にしないでいた。あらゆる噂は誇張されているか単に間違っているかのどちらかだからだ。例えば、Web Formがメンテナンスモードに入り、HTML向けにはアップデートされないという噂がいい例だ。しかし、残念ながらSilverlightの死が噂ではないようだ。Microsoftが方針を変えないのなら、Windows 8がリリースされると、Flashや他のプラグインと同様にSilverlightは使えなくなってしまう。
9月14日、Steven Sinofsky氏とDean Hachamovitch氏はWindows 8のMetroスタイルのブラウザはプラグインをサポートしないことを発表した。Metroスタイルのブラウザはスクロールバーやウィンドウ枠などの基本的な要素を必要としない、フルスクリーンで利用するInternet Explorerの実装であり、Windows 8ではほとんどの人が利用する。Metroユーザインターフェイスがタッチ機能を充実させる一方、UIはすべてのデバイス向けに1024x768以上のサイズに設計されている。マウスとキーボードを利用する場合も同様だ。“ディスクトップ”モードも利用できるが、レガシなプログラムやPhotoshopやVisual Studioのような複雑なアプリケーションを利用するためだけに使われる想定だ。
Steven Sinofsky氏によれば、
この記事ではThis post is about a big change in MetroスタイルIEの大きな変更について説明します。MetroスタイルIEはプラグインを必要としません。Windows 8ではIE 10はMetroスタイルアプリ、そしてディスクトップアプリとして利用できます。ディスクトップアプリとしてのIEは今まで通りすべてのプラグインや拡張をサポートします。
Dean Hachamovitch氏は付け加えて、
進化し続けるウェブとタッチ操作でのブラウジングを基本とするユーザのためWindows 8のMetroスタイルブラウザではHTML5だけをサポートします。プラグインは必要ありません。今日、プラグインが提供する経験はMetroスタイルのブラウジングとHTML5のウェブの世界には合わないのです。
つまり、Flash、QuickTime、PDFリーダ、そしてSilverlightは使えないということだ。なぜプラグインを使わないブラウジングが優れていて、すべてのウェブサイトはHTML5へ移行するべきなのか、氏は説明を続ける。氏の説明の大半は正しいかもしれないが、例えば、給与明細が埋め込みPDFなので読めなかったら困るだろう。また、様々なメディアプレイヤーにホストされたビデオを見るのも困る。
なぜこうなったのか。考えられるのは、Metroスタイルブラウザがプラグインをサポートできないということだ。MetroはWin32ライブラリを使わない。新しいOSレベルのAPIであるWinRTを使う。プラグインのほとんどはGDIのようなWin32コンポーネントを使って作られているので、Metroで動かそうとするなら完全に作り直さなければならない。そして、AppleやAdobeのように先行して動く企業は would have to maintain both a WinRTとWin32の両方をx86、x64、ARMの各バージョン毎にメンテナンスしなければならなくなる。しかもこれらの開発は、MicrosoftがWinRTの制約を守りながら新しいプラグインアーキテクチャを開発するまで始められない。
“ディスクトップ”モードではFlashもSilverlightも今まで通り問題なく使えるという点には注目しておきたい。 また、ディスクトップモードはFirefoxやSafari、Chromeのような他のブラウザに切り替えることもできる。
ウェブに繋がるデバイスが急増し、それらのほとんどがプラグインをサポートしていないことを考えると、プラグインのような技術を卒業することを検討するべきなのかもしれない。しかし、現時点ではHTML5はFlashやSilverlightで作れる没入型のアプリケーションを作るのに向いていない。少なくとも、Web WorkersやWebSocketのような中核技術の標準は確定させなければならないし、レイアウトのリサイズ問題にも対処する必要がある。そして、JavaScriptも大きな問題だ。今のJavaScriptの構文や動的特性は大きな、モジュール化されたアプリケーションの開発に向いていない。
実のところ、Silverlightに投資している会社は一番良い位置にいるのではないか。企業内部で使うアプリケーションに使うためSilverlightやFlexに投資してきたからだ。このようなアプリケーションは普通HTMLを使っていない。ブラウザは単にアプリケーションの配信に使っているだけだ。このようなアプリケーションは驚くほど簡単にMetroランタイムに移植できるかもしれない。新しいアプリ配信の仕組みが必要だろうが、企業向けWindowsアプリストアのようなものが出来るのは間違いないだろう。
ウェブサイトを大きくするためにFlashやSilverlightを使っている企業は問題が起こるかもしれない。単純には移植できないので、スクラッチでHTMLとJavaScriptで書き直さなければならないからだ。