このページの本文へ

前へ 1 2 3 4 5 次へ

クラウドに興味ありな開発者なら、3ステップで楽々Azureに移行 第3回

Windows AzureとSilverlight 4でアプリケーション開発に挑戦

2010年12月21日 16時00分更新

文● 飯島進仁/ふむふむソフト

  • この記事をはてなブックマークに追加
  • 本文印刷

Windows Azure ロゴ

 第1回の記事では、マイクロソフトのクラウドサービスである「Windows Azure(アジュール) Platform」を手軽に学べる無償セミナーやトレーニングについて、第2回では無料で構築できるWindows Azure&Silverlightの開発環境について紹介した。

 最終回である今回は、それらを駆使した実際のアプリケーション開発について述べていこう。本連載を読んで、マイクロソフトの開発環境やクラウド開発に少しでも興味を持っていただければ幸いだ。

今回の挑戦するアプリケーションの柱は 「Windows Azure+Silverlight 4+WCF」

 前回の記事の結びに、「Web対応のメモ帳」として構想中のサンプル画面を紹介したが、その後に実装を進めた結果、このようなアプリケーション画面になった。

筆者が開発したメモアプリの画面

今回筆者が開発したメモアプリの画面

 なにぶん実験的なアプリケーションなので、画面がややシンプルな点はご容赦いただきたいが、今回のこのアプリを実現するにあたっての技術的な柱は、大きく分けて以下の3つが挙げられる。

  1. 動作プラットフォームとしてWindows Azureを利用。Silverlightを含めたすべてのファイルは、クラウド上に配置される。
  2. 画面表示にはSilverlight 4を利用し、HTMLで作成した静的ページでは不可能な“画像ファイルのドラッグ&ドロップ”などを使った直観的な操作を実現する。
  3. サーバー(Windows Azure)からSilverlightへのデータの読み込み、保存といった通信には、WCF(Windows Communication Foundation)を利用する。実際のデータの保存などのサーバー側処理も、WCF内の処理として行なう。

 まず、【1】については、今回のメインテーマなので言うまでもないが、Windows Azureを利用することによって、作ったアプリケーションを手軽にWeb公開できる環境が手に入れられる、という点が重要なポイントだ。

サンプル・クラウドアプリケーションの利用シーン

今回作成したサンプル・クラウドアプリケーションの利用シーン

 例えば、この写真は今回作成したアプリケーションを、ASCII.jpの編集者が普段使っているノートパソコンで試用したところだ。

 会議室には無線LAN環境が用意されており、Webサイト上で公開されているアプリケーションを、WindowsパソコンのInternet ExplorerやFirefoxだけでなく、MacBook Air上のSafariでも問題なく動作できていることが見て取れるだろう。

 次に【2】だが、もちろんASP.NETのみでも高度なWebアプリケーションの開発は可能であるが、今回は通常のHTMLやJavaScriptでは実現できない、より高度な機能を実現するためにSilverlight 4を利用している。

 Silverlight 4を使うもうひとつのメリットは、前述のようにWindows以外の環境でも動くという点にある。

Mac OS X上のSafariでも動作している

Mac OS X上のSafariでも動作している

 ご覧のようにMac環境でも無事動作した。マイクロソフトのアナウンスによると、今後はWindows Phone 7といったモバイル環境でもSilverlightのサポートが強化されていくようなので、こちらも楽しみだ。

 最後に【3】についてだが、WCFとは.NET Frameworkに含まれる通信用の機能であり、通信部分の実装をカプセル化できるというメリットがある。そのため、今回のように「SilverlightとWebサーバーの通信」といった機能も.NETの技術を用いて比較的容易に実装が可能となる。


 これら3つの技術的な柱を念頭に置いたうえで、今回のアプリケーションを開発する際のポイントについて、ピックアップして解説しよう。

 なお、今回は開発環境の操作や、サンプルコードの解説は「Visual C#」を前提としているので、その点はご了承頂きたい。

 (次ページ「Visual Web Developer Express 2010でWindows Azure開発を始める」に続く)

前へ 1 2 3 4 5 次へ

カテゴリートップへ

この連載の記事