Visual Studio LightSwitch 概要 by Jay Schmelzer ~ クラウドカバー Episode 55
さて、今回のクラウドカバーは、Visual Studio の製品ラインに追加された新しい製品 LightSwitch (ライトスイッチ) に関するるお話。
マイクロソフトにおいて開発ツール製品は、”Visual” ブランドのもとに統合されており、その主力ブランドとしては Visual Studio が、各言語ブランドとして(現在は実質的に Visual Studio ブランドに統合済み) Visual Basic、Visual C++、Visual C# などがあります。また、周辺ツールとして(かつては) Visual SourceSafe や、(日本では発売されていなかった) Visual FoxPro などがあります。
そんな、”Visual” な製品ラインに今回追加されたのが LightSwitch です。
LightSwitch をお使いいただくと、テンプレートベースで簡単にビジネスアプリケーションを作成することが可能です。
詳しい説明は、製品ページを参照いただき、さっそく評価版を(MSDN Subscription の Professional、Premium、Ultimate な会員の皆様は製品版を)インストールください。
では、いつものようにニュースから。
◆ More Windows Azure Marketplace Content & Hands On Lab
SaaS なアプリケーションを、Windows Azure Marketplace で販売するシナリオをカバーしたハンズオンラボの紹介です。
コンテンツ自体は、Windows Azure のトレーニングキットに含まれます(インストールディレクトリ\Labs\IntroToAppMarket)
Windows Azure でがっぽり!、するためのファーストステップですね♪
◆ Microsoft Windows Azure Development Cookbook
Windows Azure の新しい書籍 Development Cookbook が出版されました。電子版も購入できます。
コードサンプル満載なこの書籍ですが、「Windows Azure Service Management REST API」の章が無償ダウンロードできます(36ページ)。
◆ WA Toolkit for iOS: New Project Experience with Windows Azure Access Control Service
◆ WA Toolkit for iOS: New Project Experience for Accessing Windows Azure Storage
iPhone 向けアプリで Windows Azure を使用する際の支援機能を提供する Windows Azure Toolkit for iOS。ACS と Storage に関しての機能アップデートに関するブログエントリです。
なお、iOS 版以外にも Android 版もありますので、Android ラバーな方はそちらも要チェック。ソーシャルなフォーンアプリの基盤はクラウド(Azure)だよね、ってことで。
さて、話題はいよいよ今回の本題 LightSwitch へ。
まず Visual Studio との位置づけから。
LightSwitch は一言でいうと “デスクトップにもクラウドにも使える、最も簡単なビジネスアプリケーションの構築ツール。
ビジネスアプリケーションを構築する2つの方法、開発者向けのツールを使った本格的な開発、および、エンドユーザーによる Excel や Access を使った開発、のギャップを埋めるための製品です。
Visual Studio は general purpose (何にでも応用できる)ツールですが、LightSwitch はビジネスアプリケーション(データがあり、UIがあり、ロジックある)領域に特化したツールになります。
たとえば、ビジネスユーザーが必要とするソフトウェアを、IT部門に依頼しなくても自分たちで構築できるようなことが可能になります。
一方で既存のプロフェッショナルな開発者も LightSwitch に対する拡張や新しい機能追加といったことが可能なツールになっています。
では、そのような LightSwitch にとって、Windows Azure はどのような意味を持つか?
開発したアプリケーションはどこかに配置して運用する必要があります。Azure を使うと、IT部門に依頼しなくとも信頼性の高いインフラを、エンドユーザーが準備することができるのです。
Visual Studio LightSwitch の入手方法は2つあります。
単体で購入する(※)、および、MSDN Subscriber な方はダウンロードで入手いただく、という方法です。
※ クラウドカバーでは “スキュー” といった発音で話していますが、これは SKU のことです。SKU とは製品管理の単位で、個別のバーコードがついている単位と思っていただければほぼ問題ないかと。たとえば、ガリガリ君のソーダ味と、レモンスカッシュ味には異なるバーコードがついていると思いますが、この場合 SKU としては2つあることになります。
いずれにせよ、インストールいただくと Visual Studio 2010 の環境に、Visual Studio LightSwitch 2011 が統合された形で利用できるようになります。(ちょとややこしい )
最初のプロジェクト選択では、言語別のプロジェクトテンプレートを選択しますが、LightSwitch の設計目標はコードを書かずにビジネスアプリケーションを作ること。コードを書くのは、拡張をしたいときだけ、に限定したいと思っています(ので、デモでも頑張よ、と)。
ビジネスアプリケーションにとって重要な要素は、データ、UI(スクリーン)、ロジック、の3つ。
最初のデータに関しては、新しく作成する、というオプションと、既存のデータを使う、というオプションがあります。まずは新しく作成しましょう。
Visual Studio にデータベースのテーブルデザインの画面が出てくるので、これから作成するビジネスアプリケーションで必要になるデータ(名前、電話番号 etc)を入力します。
LightSwitch ではあらかじめビジネス用のデータ型が用意されているので、それを用いてデータ定義が可能です。
さて、データの定義が完了すれば、次はUI(スクリーン) の定義です。
LightSwitch ではビジネスアプリケーションで利用されることの多い画面テンプレートをあらかじめ用意しているので、それを選択します。
今回は検索の画面を選択します。
さっそくデバッグ実行(F5)しましょう。
アプリケーションが立ち上がってきます。
このアプリケーション、Sliverlight で作成され、Web ベースでアクセス可能なアプリケーションですが、内部的にはWCF RIA Service を利用し、MVVM なパターンで作成されているので、拡張も容易に行うことが可能です。
新規データの登録を行うと、データ型の定義に基づいたナビゲーション等も利用しながら、簡単にデータ入力が可能です。
入力したデータを一覧表示、検索するための機能もすでに用意されています。
また、ビジネスアプリケーションにありがちな、データを Excel に吐き出す、といった機能も最初からついています。
これまでの説明は、新規にデータを作成する方法でしたが、既存データの利用として、Database、SharePoint、WCF RIA Service の3つが選べます。
Database を選択し、SQL Azure への接続情報を入力すると、SQL Azure 上にあるデータベースの情報を取得してくるので、必要なテーブルを選択し、アプリケーション作成に用いることが可能です。
表示するためのスクリーン テンプレートを選択し、表示するデータ項目の選択や、追加でのデータ型の選択(データベースのデータ型としては ”文字列” となっている項目に対し、”電話番号” といった LightSwitch で用意されているセマンティックなデータ型を割り当てる作業)などを行いデバッグ実行すれば、以下のように SQL Azure に接続し、データにアクセスするアプリケーションが完成します。
カスタマイズを行う場合は、実際の最終的な画面イメージ(Live Preview)を確認しながら、項目の選択や入れ替え、といった作業を行うことが可能です。
さて、このように作成したアプリケーション。検索の画面から、詳細情報のページを表示する、といった基本機能も備わっていますが、もうすこしかっこいい詳細画面を作りたいよね、ということで、新しいスクリーンを追加します。
すると、デフォルトで提供されていた詳細画面が、より充実した詳細画面に入れ替わります。
では作成したアプリケーションを Azure に配置(発行)してみましょう。
アプリケーションの発行ウィザードを立ち上げると、IIS へ配置するか(オンプレミスやホスティング)、Azure に配置するかの選択肢が出てきますので、Azure を選択。
Azure のサブスクリプション情報等々、必要な情報を入力し、発行先のホスティングサービスを選択し、発行を開始すれば、Azure への配置完了です!簡単!
さて、LightSwitch には様々な拡張機能があります。
例えば、テーマとしてメトロスタイル(Windows Phone で採用している UI スタイル)を選択すると、コードを書き換えることなく、アプリケーションの見た目が変わります。
(もうちょっと頑張ってほしいです。はい)
さらに拡張を続けけると、以下のようなかっこいいアプリケーションに!
ということで、LightSwitch の紹介はここまで。
最後はいつもの Tip of the Week!
今回欠席している Steve Marx ですが、いなくてもクラウドカバーに参加、ということで Steve Marx のブログより。
Redirecting to HTTPS in Windows Azure: Two Methods
HTTP でアクセスしてきたユーザーをいかに HTTPS のページにリダイレクトするか、という話題。2つの方法が提示されています。
一つ目は ASP.NET MVC の RequireHttps 属性を使う方法。
もう一つは IIS の URL Rewriting を使用する方法です。
HTTPS へのリダイレクトが必要なシナリオを実装する際には、ぜひ参考にしてください!
以上、クラウドカバー Episode 55、Visual Studio LightSwitch の紹介でした!
Enjoy!