アプリケーション開発の実際
では、Visual Studio 2008を使って実際にアプリケーションを作成してみましょう。なお、ここではローカル環境での実行サンプルまでを示します。
プロジェクトの作成
まず、Windows Azureのプロジェクトを作成しましょう。Visual Studio 2008を起動し、[ファイル]-[新しいプロジェクト]を選択します。
[新しいプロジェクト]ウインドウが表示されますが、Windows Azure Tools for Microsoft Visual Studioをインストールすることにより、左側ペインのプロジェクトの種類に[Cloud Service]の項目が出現しているはずです。
今回は言語としてC#を利用しますので[Visual C#]以下の[Cloud Service]を選択します。
続いて右側ペインのテンプレートから[Web Cloud Service]を選択し、プロジェクト名/場所/ソリューション名を指定し、[ソリューションのディレクトリを作成]にチェックを入れて[OK]を押下します。プロジェクト名は「HelloWorld」としました。次のように新しいプロジェクトが作成されたでしょうか。
Visual Studioの右側ペイン、ソリューションエクスプローラにプロジェクトの構成が表示されています。「HelloWorld」と「HelloWorld_WebRole」の2プロジェクトが作成されました。「HelloWorld」が、アプリケーションの構成や動作の設定をするプロジェクト、「HelloWorld_WebRole」がWebロールで、ソースコードなどを記述するアプリケーション本体部分のプロジェクトです。
Hello, World!してみよう
では、作成したプロジェクトを使って、ブラウザに「Hello, World!」と表示させる単純なアプリケーションを作成します。
まず、「HelloWorld_WebRole」以下の「Default.aspx」を編集しましょう。Default.aspxはプロジェクトが作成された時点でメインウィンドウに表示されているはずです。もし表示されていなければソリューションエクスプローラでDefault.aspxをダブルクリックして表示させてください。
今回は文字列の表示にLabelコントロールを使用します。Visual Studioのメニューから[表示]-[ツールボックス]を選択し、ツールボックスを表示させます。ツールボックスが表示されたら[標準]を展開し[Label]を選択します。Visual Studioの場合、コントロールはドラッグ&ドロップで配置できますので[Label]をそのままドラッグし、Default.aspx の<body>以下の<div></div>にはさむようにドロップしてください。
<body> <form id="form1" runat="server"> <div> <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label> </div> </form> </body>
Visual Studio 2008は以下の画面のようになります。
ここではコントロールをコードペインにドロップしましたが、デザイン画面を表示させた上でドロップすれば視覚的に編集することも可能です。さて、以上でDefault.aspxの編集は終了です。
続いて、Default.aspxのビハインドコードを編集しましょう。ソリューションエクスプローラでDefault.aspxの[+]をクリックするとビハインドコードのファイルが表示されます。今回、プロジェクト作成の際に言語として C#を選択したのでビハインドコードの拡張子は.csになっています。では、ビハインドコードDefault.aspx.csをダブルクリックしてください。
コードの編集画面が表示されたらデフォルトで存在するPage_Load
メソッド内に次のように記述してください。
Label1.Text = "Hello, World!";
Visual Studio 2008は以下の画面のようになります。
さて、以上でコードの編集は終了です。
ローカル環境での実行
では作成した、クラウド・アプリケーションを実行してみましょう。Visual Studio 2008のメニューバーから[デバッグ]-[デバッグ開始]を選択します。既定のブラウザが立ち上がり、次のような画面が表示されるでしょうか。
Windows Azureアプリケーションを実際に運用する場合は、完成したプロジェクトをクラウド上に配置しなければなりません。しかし、開発中のデバッグではローカルに仮想的なクラウド・サーバが立ち上がってアプリケーションを実行してくれるので、逐一アプリケーションをクラウド上に配置せずとも、動作を確認することができます。
さて以上で、単純なWindows Azureアプリケーションの作成が完了しました。お気づきかと思いますが、Windows Azureのクラウド・アプリケーションの作成は実際にはVisual Studioの使い方も含めASP.NETの開発とほぼ同じです。これは.NETの開発経験のある技術者にとって非常に有利な環境と言えるでしょう。
ただし、先述の通り、ファイルのI/Oやデータベースの扱いなどについてはAzure独自の知識が必要になります。こういった差異に関しては今後本連載の中で追々取り上げていきます。
まとめ
連載の初回では、クラウド・コンピューティングについての背景とWindows Azureの技術的特徴について扱いました。Visual Studio 2008を利用することにより、今までの経験を活用しつつ簡単にWindows Azureアプリケーションの構築が可能であることが理解できたと思います。
今回はローカル環境での実行でしたが、次回は実際にアプリケーションをAzure Service Platformに配置して、Windows Azureの運用の実際を学んでいきましょう。次回をお楽しみに。