Shoeisha Technology Media

CodeZine(コードジン)

記事種別から探す

最先端プラットフォーム「Silverlight」を使ってみよう

Silverlightでメディアプレーヤーを作成する

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2007/07/13 14:00

リッチクライアント技術が数多く発表される中、「Silverlight」という新しいプラットフォームが姿を現しました。まだバージョン1.0がBeta版、1.1がAlpha版であるため、今後大きく変わっていくことが予想されますが、現時点でも十分な魅力を備えていますので、それらを少しでも紹介し、一足先に親しんでいただければと思っています。

目次

はじめに

 リッチクライアント技術が数多く発表される中、その姿を現した「Silverlight」という新しいプラットフォームは、開発コード「WPF/E(Windows Presentation Foundation/Everywhere)」で呼ばれており、同様の新技術である「WPF(Windows Presentation Foundation)」のサブセットとして誕生しました。そのため、WPFと同様に「XAML(Extensible Application Markup Language):ザムル」というXMLベースのプレゼンテーション記述言語を使用する次世代のリッチクライアント言語と呼ばれています。

 Silverlightはまだバージョン1.0がBeta版、1.1がAlpha版であるため、今後大きく変わっていくことが予想されますが、現時点でも十分な魅力を備えていますので、それらを少しでも紹介し、一足先に親しんでいただければと思っています。

 本記事では、Silverlightの魅力と簡単なサンプルを紹介します。

対象読者

 本記事は、次のような方を対象としています。

  • HTTP、HTML、JavaScriptを使用した開発を行ったことがある方
  • Flashを使用した開発を行ったことがある方
  • Silverlightについて興味がある方

必要な環境と準備

  • Silverlight 1.0 Beta SDK
  • Silverlightは、現時点で1.0 Betaと1.1 Alphaが存在しますが、1.1 Alphaはプレリリースとして提供されている評価版のため、本記事では1.0 Betaを使用します。

 Silverlight 1.0 Beta SDKをダウンロードするには、マイクロソフトのSilverlightサイトのメニューから[ツール]をクリックし、表示される「ツール&リソース」ページで[Microsoft Silverlight 1.0 Beta ソフトウェア開発キット (SDK) (英語)]をクリックします(図1)。

図1 Silverlightサイト(「ツール&リソース」ページ)
図1 Silverlightサイト(「ツール&リソース」ページ)

 ローカルディスクに「Silverlight1.0SDK.zip」ファイルを保存したら、任意のフォルダに解凍してください。SilverlightのSDKは、解凍したファイルの「Silverlight.js」が該当し、その呼び出しロジックは「CreateSilverlight.js」に記述されています。本記事のサンプルではこれらを使用します。

Silverlightアプリケーションの実行

 Silverlightアプリケーションを実行するには、Webブラウザにプラグインをインストールする必要があります。プラグインがインストールされていない状態でSilverlightアプリケーションを実行すると、インストールを促すアイコン(図2)が表示されるので、指示に従いSilverlightプラグインをインストールしてください。

図2 Get Microsoft Silverlightアイコン
図2 Get Microsoft Silverlightアイコン

 Silverlightのランタイムにも1.0 Betaと1.1 Alphaが存在し、1.1 Alphaは1.0 Betaのすべてを含むため、1.1 Alphaがインストールされていれば、1.0 Betaで作成されたSilverlightアプリケーションを実行できます。逆に、1.0 Betaしかインストールされていない環境では1.1 Alphaで作成されたアプリケーションを実行できません。その際はアップグレードする必要があります。

Silverlightとは

 Silverlightは、マイクロソフトによって開発されたクロスブラウザ(※1)・クロスプラットフォーム(※2)・高度なメディアエクスペリエンスやRIA(Rich Interactive Application:表現力/操作性に優れたアプリケーション)を実現する、軽量なWebブラウザプラグインアプリケーションです。WPFのサブセットとして開発されたため、XAMLを媒介に、開発者とデザイナーがそれぞれの使い慣れたツールを使用して完全に分業できます(※3)

  • ※1 執筆時点(2007/7)ではInternet Explorer 6、7、Firefox 1.5以上、Safariに対応。
  • ※2 執筆時点(2007/7)ではWindows OS、MacOS Xに対応。今後Windows Mobileにも対応予定。
  • ※3 執筆時点(2007/7)では正式にサポートされた開発環境はない。正式サポートは開発者向け「Visual Studio 2008」(2007年中出荷予定)やデザイナー向け「Expression Blend 2」(出荷日未定)の予定。

Silverlightの特徴

 Silverlightには次のような特徴があります。

  • 軽量なランタイムと簡単なインストール
  • ランタイムは主要なWebブラウザに対応し、ダウンロードサイズも2MB程度と軽量。未インストールの場合はインストールサイトへの誘導も行うため、手軽にインストールできます。
  • ベクターベースのグラフィック
  • グラフィックはベクターベースであるため、任意のサイズへの拡大/縮小可能。多彩で柔軟性の高いグラフィックを表現できます。
  • 統合的なメディア形式
  • WMV(Windows Media Video)、SMPTE(Society of Motion Picture and Television Engineers) VC-1、WMA(Windows Media Audio)、MP3 Audioをサポートする統合的なメディア形式により、高精細(HD)からモバイルまで幅広く対応。さらに、ブロードキャスト型オーバーレイを統合することで、品質を損なうことなく、滑らかなビデオやアニメーションを使った配信が可能になります。
  • 既存のWebテクノロジーとの容易な連携
  • JavaScriptや.NET Frameworkをベースとしているため、既存の技術(XHTML、AJAX、PHP、Apacheなど)との連携も容易に行えます。また、JSON、RSS、POX、RESTなどの共通プロトコルやLINQもサポートしているため、Webサービスやマッシュアップともシームレスに連携します。
  • 検索エンジンとの連動
  • インターフェースやコンテンツがすべてXMLベースのXAMLで記述されているため、インデックス化や検索エンジンへの最適化(SEO)が容易です。
  • 多彩な開発言語(1.1以降)
  • Silverlight 1.0はイベントハンドラにJavaScriptを使用していますが、Silverlight 1.1ではJavaScriptに加え、.NETマネージドコードをサポートするため、C#、Visual Basic .NETを始めとして、IronRubyやIronPythonなどの各種開発言語を選択できます。

Silverlightのファイル構成

 本記事では、サンプルとして「Silverlight 1.0 Betaで作成したメディアプレーヤー」を用意しました(リンク参照)。このサンプルを使って、Silverlightアプリケーションの一般的なファイル構成を紹介します。最小構成として次のようなファイルが必要となります。

  • Silverlight.js
  • SDKに付属しているSilverlightアプリケーションのコアモジュール。執筆時点(2007/7)では、1.0 Betaおよび1.1 Alphaともにファイル内容は同一。
  • createSilverlight.js
  • 当サンプルでは、Silverlightオブジェクトの作成とイベントハンドラを記述しています。任意のJavaScriptファイル(*.js)としても定義できます。
  • Default.htm
  • 当サンプルにおけるスタートページ。内容は、Silverlightオブジェクトの作成ロジックの呼び出しです。
  • myxaml.xaml
  • Silverlightアプリケーションの描画やイベントを定義しています。
  • Silverlight.wmv
  • 当サンプルに使用しているビデオ。通常は必要ありません。ソース元はSilverlightサイトのSilverlight紹介ビデオです。
 「Silverlight.wmv」は添付のサンプルソースに含んでいません。サンプルを実行するには、Silverlightサイトからビデオをダウンロードし、ファイル名を「Silverlight.wmv」に変更してください。なお、ファイル名が「Silverlight.wmv」であれば、他のWMVファイルでも動作します。

  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • 松原 晋啓(マツバラ ノブアキ)

    アーティサン株式会社 取締役副社長兼CRM事業部長(CRMエバンジェリスト) SE、アーキテクト、コンサルタント、エバンジェリスト(Microsoft MVP for Dynamics CRM)、マイクロソフトのソリューションスペシャリスト(Dynamics CRM製品担当)を経て、現在はDy...

バックナンバー

連載:リッチクライアントエキスパート
All contents copyright © 2005-2017 Shoeisha Co., Ltd. All rights reserved. ver.1.5