Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

Silverlight 2の業務アプリケーションへの活用
Silverlight 2の紹介

Silverlight 2で作成する業務アプリケーション入門 (1)

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2008/11/26 16:40

 「Silverlight 2」はプラグインを介すことにより、Webブラウザ上で.NET技術を利用した高度なアプリケーションを作成可能にする技術です。今後、Silverlight 2による業務アプリケーションの実装も視野に入ってくることでしょう。今回はSilverlight 2を業務で活用するメリットに着目して、その特徴を紹介します。

目次

Silverlight 2とは

 本連載では、RIA(Rich Internet Application)技術であるSilverlight 2について、とりわけ業務アプリケーションの実装でどのように活用できるか、という観点で解説します。

 「Silverlight 2」はクロスブラウザ、クロスプラットフォーム、およびクロスデバイスに対応する、Webブラウザのプラグインです。Webブラウザ上で、動画や音楽などさまざまなリッチコンテンツを扱うことを可能にします。現在、RIA分野においてはFlashの利用が一般的ですが、Silverlight 2はFlashと似た側面を持つ技術と言えます。しかし、ただFlash対抗というだけではなく、Microsoftの技術ならではの特徴も多く持っています。

 Silverlightは当初、処理記述にJavaScriptのみをサポートする1.0がリリースされました。現在は.NET Frameworkのサブセットをサポートし、記述言語をC#、VBなどに拡張したSilverlight 2(正式名称はSilverlight 2.0ではなくSilverlight 2です)がリリースされています。またこのメジャーバージョンアップにより、.NET利用者が使い慣れた多くのコントロールが利用できるようになりました。

Silverlight 1.1アルファ

 Silverlight 1.0の後継として当初、.NET Frameworkのサポートが追加されたSilverlight 1.1アルファ版がリリースされました。しかし、結局のところSilverlight 1.1はアルファ版リリースが最後でベータ版リリースにまで至ることはありませんでした。1.1の後継として数々のコントロールを追加したうえでSilverlight 2ベータ版がリリースされ、現在の正式版に至っています。

対象読者

  • Silverlight開発初心者
  • Visual Studio 2008利用者

Silverlight 2の特徴およびアーキテクチャ

 Silverlight 2のいくつかの特徴、およびアーキテクチャについて解説します。

実現できる事柄

 Silverlight 2は軽量なWebブラウザ用プラグインとして動作します。エンドユーザーはSilverlight 2のプラグインを導入したブラウザを利用するだけで、多種多様なリッチコンテンツを簡単に楽しむことができます。また、Silverlight 2はWindows/Mac OS X、各種ブラウザ、各種端末デバイスに対応するため、複数の環境下での同一コンテンツの提供および利用を可能にします。以下に現時点で対応しているプラットフォームでの動作要件を記します。

Silverlight 2の動作要件
プラットフォーム 動作要件
Windows x86(x86-64) 500MHz以上のプロセッサ 128MB以上のメモリ
Mac OS X Intel Core Duo 1.83GHz以上のプロセッサ 128MB以上のメモリ

 以下に各ブラウザ、OSの対応状況を示します。なお、Silverlight 1.0はPowerPC版のMac OSに対応していますが、Silverlight 2は対応していません。

Silverlight 2の対応状況
OS IE7 IE6 Firefox Safari
Windows Vista
Windows XP(SP2以降)
Windows 2000
Mac OS 10.4.8以降(Intel)

技術的特徴

 Silverlightは旧バージョンの1.0から、映像や音楽、インタラクティブなコンテンツなどのリッチコンテンツをブラウザ上で扱うことを可能にしてきました。実際、これらのリッチコンテンツの種類はFlashがカバーするそれと大差はなく、後継バージョンであるSilverlight 2も表面的に見ればFlashの単なる対抗馬に過ぎないように感じられるかもしれません。

 しかし、Silverlight 2の持つ大きな特徴の一つはその「開発効率」にあります。Silverlight 2は既存のMicrosoft技術や標準技術と高い親和性を持っています。例えばSilverlight 2はユーザーインターフェイス部分の定義にWPF(Windows Presentation Foundation)で用いられているXAMLを採用しています。また、ロジック部分にはJavaScriptやC#,VB,Python,Rubyなど幅広い言語を利用することができます。言うまでもなくこれらは多くの技術者が既に習得しているか、あるいは比較的容易に習得しうるものです。また、Silverlight 2の開発を通して習得した技術は当然、.NET環境の他の分野でも応用することができます。さらにSilverlight 2は「Visual Studio」やユーザーインターフェイスデザインの専用ツールである「Expression Blend 2」を利用できるなど、Microsoftの統合開発環境と非常に高い親和性を持っています。

 Flashはある意味で「職人」的性質を持つ技術であり、アニメーションやストーリーボードなど、開発者にとってはややなじみづらい概念を基礎としています。これとは対照的に、Silverlight 2は特に.NET環境の背景を持つ開発者にとってなじみ深い概念やスタイルを基礎にしています。これらの要素は言うまでもなく、開発コストや開発期間の低減という効果をもたらし、さらに開発者の教育また確保を容易にするでしょう。この点は業務でSilverlight 2を採用するメリットと言えます。

 加えて、Silverlight 2はブラウザ上で.NET技術を幅広く活用することを可能にします。つまりブラウザという限定された環境においてWindowsアプリケーションに限りなく近い機能を実現することができます。これによって、スタンドアロンなアプリケーションに比べて表現力や操作性において劣るとされてきた従来のWebアプリケーションを、業務使用に耐えうるレベルに引き上げることができるのです。加えて、Silverlight 2では.NET技術を活用したアプリケーションをMac OS環境上で走らせることも可能となっています。

 以下の図にSilverlight 2のアーキテクチャを示します。

Silverlight 2のアーキテクチャ
Silverlight 2のアーキテクチャ

 Silverlight 2の中核となっているのは、.NET Framework for Silverlightおよびプレゼンテーションコアです。.NET Framework for Silverlightは.NET Frameworkのサブセットで、Silverlight専用の軽量版CLR上で動作します。Silverlightの動作にはブラウザプラグインのインストールが必要ですが、.NET Frameworkフルセットのインストールは不要となっています。また、プレゼンテーションコアについてはWPFと同様に、XAMLによってユーザーインターフェイスを定義します。Silverlightのコントロール、データバインディング、レイアウトマネージメントについては以降の連載でも取り上げます。さらにSilverlight 2は後でも述べる通り、著作権管理機能であるDRMやプログラム上でクエリを扱うためのLINQ、動的言語をサポートするDLRなどの機能を含んでいます。


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

著者プロフィール

  • 山田 祥寛(ヤマダ ヨシヒロ)

    静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for ASP/ASP.NET。執筆コミュニティ「WINGSプロジェクト」代表。 主な著書に「入門シリーズ(サーバサイドAjax/XMLD...

  • WINGSプロジェクト 土井 毅(ドイ ツヨシ)

    <WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2017年5月時点での登録メンバは52名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂き...

バックナンバー

連載:Silverlight 2で作成する業務アプリケーション入門
All contents copyright © 2005-2018 Shoeisha Co., Ltd. All rights reserved. ver.1.5