JavaScriptの300倍以上のパフォーマンス!?

MicrosoftはSilverlightと共に、クロスプラットフォーム版の.NET Frameworkの提供を開始した。開発者は.NET Frameworkがサポートする37以上のプログラミング言語を使ってブラウザ・アプリケーションを記述できる。またSilverlightは.NETのミニ版のCLR(Common Language Runtime)を備える。非常にコンパクトなサイズであるため、懐疑的に思う開発者も多いそうだが、「デスクトップCLRに含まれているのと、全く同じCLRエンジンを提供している」とGuthrie氏。そのメリットはパフォーマンスだ。「われわれのベンチマークでは、Webブラウザにおいてネイティブ環境のJavaScriptの300~1000倍の高速動作を確認している」と同氏。

Webブラウザで.NETを利用する6つのメリット

デモでは、Silverlightの手軽なインストール・プロセスを証明するために、.NET Frameworkを備えていないバージョンのWindows XPマシンを使って、Webアプリが動作するサイトを訪れた。するとSilverlightのインストールが促され、クリックすると十数秒程度でインストールが完了した。ロードされたWebアプリは2つのAIエンジンを備えたチェスで、1つはC#と.NETを用いて構築され、もう1つはWebブラウザのJavaScriptを用いていた。その2つのAIエンジンを対戦させたところ、パフォーマンスの差は明らか。.NETの圧勝に終わった。

WebブラウザがSilverlightのプラグインを備えていない場合、上のような表示に。クリックすると十数秒でインストールが完了する

Nodes/秒でJavaScriptを圧倒する.NET。十数秒でチェックメイトとなった

Flash対抗として話題になったため、Silverlightにグラフィックスやアニメーションのためのプラットフォームというイメージを抱いていたが、実際にはデスクトップクラスのアプリケーションを作れる本格的な開発環境という一面を備えているようだ。MIX07にあわせてMicrosoftは、.NETサポートを含むSilverlight 1.1のアルファ版、Visual Studio "Orcas"版のSilverlightツールのプレビュー版、ダイナミック言語CodePlexプロジェクトなどを発表した。

Silverlight 1.1のアルファ版を用いた例としてMetariq CEOのBeau Ambur氏が、同社初のSilverlightプロジェクト「Top Banana」を披露した。これはオンラインビデオ編集アプリケーションで、プレビューウインドウをドラッグ&ドロップで重ね合わせるだけで2つのビデオをつなぎ合わせられるなど、直感的な操作を可能にしている。

Ambur氏によると、まずExpression Designで全体的なデザインとグラフィックスを作成し、XAMLにエキスポートしたファイルをBlendで調整。同じプロジェクトファイルをVisual Studioに取り込んでC#を使ってインタラクティブ操作部分を仕上げた。XAMLの数千ラインを統合し、最終的には50kのサイズに収まったという。

ビデオを検索、編集画面にプレビューウインドウを並べて編集するTop Banana

フィルムストリップ表示、ドラッグ&ドロップなどを使った直感的な編集操作が可能

Expression Designを用いたグラフィック・パーツ作成

Blend 2でインタラクティブ操作部分の仕上げ。ドキュメントが全くない手さぐり状態での開発だったが、トラブルもなく、予想以上にスムースに完了した、という

サービス提供もきっちりサポート

Windowsサーバを持たない小規模事業者や個人でも、Silverlightを使った配信サービスを提供できるようにするのがストレージ/ホスティングサービスの「Microsoft Silverlight Streaming」だ。無料で最大4GBまでのビデオコンテンツとアプリケーションをMicrosoftのデータセンターにアップロードできる。DVD品質のビデオ配信、ユーザー自身のWebサイトへの組み込みが可能。Microsoftのコンテンツ配信ネットワークにホストされているため、「ブログコミュニティで話題になって突然のアクセス増に見舞われたとしても、安定した配信が継続される」という。

サービスホスティングで開発者をサポートするMicrosoft Silverlight Streaming

競争ではなく共存、Silverlightは選択肢の追加

Silverlight 1.0は、今年夏に正式版がリリースされる予定だ。Silverlight 1.1、モバイル向けSilverlightについてはリリース時期は明かされなかった。

SilverlightとExpressionのロードマップ

MLB.comが披露したSilverlightモバイル版の動作デモ

Q&AセッションでGuthrie氏は、Adobeとの競争について「開発者やデザイナーは、豊富なツールの選択肢の中から、シナリオに適したツールを利用できる状況を望んでいる。Silverlighの開発において、われわれはインタラクティブな体験に焦点を当て、どのようにして既存テクノロジとの差別化を図り、どのように開発者とデザイナーが協力してプロジェクトを進められるかを考えてきた。ユーザーに追加をふみ切らせる魅力的な機能をSilverlightはいくつか備えていると思う。だが、すべてを(Silverlightに)切り替えるべきだというような状況にはならないだろう。ゼロ・サム的な競争にはならないと考えている」と答えた。

MIX07を通じて感じたのは、Microsoftの謙虚な姿勢だ。もしMicrosoftがSilverlightの技術的な優位性を強烈にアピールし、ゼロ・サム的な競争を仕掛けたら、テクノロジの断片化が起こる可能性がある。だが同社は、プラットフォームをコアとする企業として、Webデザイナーや開発者との信頼関係の構築に力を注いでいた。Silverlightのデモは非常に印象的だった。が、それ以上に、MIX07においてデザイナー/開発者コミュニティをサポートするMicrosoftの姿勢がSilverlightの将来を明るくした。