Silverlight 2の業務アプリケーションへの活用
Silverlight 2の紹介
Silverlight 2で作成する業務アプリケーション入門 (1)
ダウンロード サンプルファイル (21.3 KB)
過去バージョンからの変更点
Silverlight 1.0からSilverlight 2へのバージョンアップにおける、主な変更点は次のとおりです。
- 日本語対応
- コントロールの追加
- .NET Frameworkのサポート
以下でこの3点について解説します。
日本語対応
Silverlight 2からは正式に日本語がサポートされていますので、通常のコントロールのフォントとして容易に日本語を扱うことができるようになりました。
過去バージョンにおいては日本語フォントをサポートしていなかったこともあり、コンテンツで日本語を利用することに困難が伴いました。場合によっては日本語フォントをベクターデータ化したうえで扱うなど、半ば強引とも言える工夫もされていたようです。
コントロールの追加
.NET開発者にとっては日頃から慣れ親しんでいる数多くのコントロールを利用できるようになりました。以下に主なものを列挙します。
| コントロール | 機能 |
| StackPanel | 複数のオブジェクトを並べて配置 |
| Grid | 行と列を指定し各コントロールを適当な位置に配置 |
| Button | ボタンコントロール |
| TextBox | テキスト入力コントロール |
| CheckBox | チェックボックスコントロール |
| RadioButton | ラジオボタンコントロール |
| Slider | スライダーコントロール |
| HyperlinkButton | ハイパーリンクコントロール |
| ListBox | リストボックスコントロール |
| Calendar | カレンダーコントロール |
| Scrollbar | スクロールバーコントロール |
| Border | 境界線コントロール |
今回は各コントロールについて具体的に触れませんが、.NET開発者にとって見慣れたコントロールが標準的にサポートされました。次回の連載ではこの中のいくつかを選んで、サンプルを通して実際の使い方を説明したいと思います。
.NET Frameworkのサポート
Silverlight 2に搭載されている.NET Framework for SilverlightのベースとなっているのはCLR(Common Language Runtime)/DLR(Dynamic Language Runtime)という言語ランタイムです。Silverlight 2に搭載されるCLRは、厳密にはフルセットの.NET Frameworkのそれと同じではなく、Silverlight専用ランタイムになります。しかし、Silverlightの開発で必要とされる機能は十分に含まれていますので、ここがボトルネックになって思うような機能が実現できないというシチュエーションは少ないと思われます。CLR搭載により、C#およびVisual Basicで処理を記述することが可能になりました。
DLRはCLR上で動作する動的言語ランタイムであり、スクリプト言語の利用を可能にします。現在のところManaged JScript(JavaScript互換)、IronRuby、 IronPythonがサポートされています。
JavaScriptに関してはもともとSilverlight1.0において利用できる唯一の言語でしたが、Silverlight 2でもサポートされています。
DLRは.NET Framework上で動的言語を使用するためのランタイムです。DLRは各動的言語をCLRに対して通訳するように動作します。既にIronRuby、 IronPythonがサポートされている他、LISPやPHPに関するプロジェクトも進行中とされています。Silverlight 2はDLRによって、さらに多くの言語をサポートする可能性を持っています。
ほかにも、.NET Framework for Silverlightは.NET Framework 3.5からの新機能であるLINQ(Language Integrated Query)を公式にサポートしています。LINQは直訳すると「統合言語クエリ」で、その名の通り、プログラム言語内に記述することができるクエリです。LINQは選択/条件設定/フィルタ/並び替え/グルーピングなど、データベースのクエリに用いられるSQLと似た概念を持っています。.NET Framework3.5から正式にサポートされたこの機能により、C#およびVBのコード内にクエリを記述し、データベースどとやりとりすることなどが可能になりました。Silverlight 2でも、このLINQを活用することができます。
以上の3点以外にSilverlight 2に追加された機能の幾つかを以下に列挙します。
| 追加された機能 | 内容 |
| データバインディング | コントロールのプロパティと他のプロパティなどを関連づける機能。本連載の後半で扱う予定 |
| スタイル/テンプレートサポート | スタイルに関するプロパティ設定を複数のコントロールにおいて利用可能 |
| XAP | Silverlightアプリケーション用の圧縮形式(後述) |
| Windows2000サポート | Windows2000環境のサポート |
| DRM(Digital Rights Management)対応 | コンテンツの流通や再生に制限をかけられる著作権管理機能に対応 |
| Webサービスのサポート | SOAP(Simple Object Access Protocol)やRSS/Atom配信フィードなどのWebサービスを利用するための機能の追加 |
| Deep Zoom | 高解像度の画像素材を階層的に分割管理することにより、画像の任意の部分を任意の解像度で高速に描画可能な機能 |
| VSM(Visual State Manager) | Visual Stateと呼ばれるコントロールの状態ごとにスタイルを管理する機能 |
| 双方向通信(サーバプッシュ) | クライアント側からポーリングを行い、サーバからのデータプッシュを可能にする機能 |
この記事は参考になりましたか?
- Silverlight 2で作成する業務アプリケーション入門連載記事一覧
- この記事の著者
-
山田 祥寛(ヤマダ ヨシヒロ)
静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるLaravel実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
-
WINGSプロジェクト 土井 毅(ドイ ツヨシ)
<WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。 2026年時点での登録メンバは約50名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書、記事多数。 RSS X: @WingsPro_info(公式)、@WingsPro_info/wings(メンバーリスト) Facebook
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社
この記事は参考になりましたか?
この記事をシェア
