lightswitch 結局何ができるの

22
わんくま同盟 東京勉強会 #65 LightSwitch ~結局何ができるの?~ 瀬尾 佳隆 (@seosoft)

Upload: yoshitaka-seo

Post on 30-Jun-2015

2.696 views

Category:

Technology


2 download

DESCRIPTION

わんくま同盟 東京勉強会 #65 セッション資料 (2011年11月19日開催) LightSwitch ~結局何ができるの?~ Visual Studio LightSwitch は業務アプリケーションを簡単に作れますが、手順が定型化されているため、スキルを持った人ほど不満に感じるようです。 開発者はどこを触れるのか、中にどんなコードができるのか、「"LightSwitch らしさ" って何?」をちょっとだけ覗いてみます。

TRANSCRIPT

わんくま同盟 東京勉強会 #65

LightSwitch

~結局何ができるの?~

瀬尾 佳隆 (@seosoft)

わんくま同盟 東京勉強会 #65

自己紹介

• 瀬尾 佳隆 (せお よしたか)

– 技術ひろば.net 管理人

– MVP for Visual C# (Jan 2009 - Dec 2011)

– 好きなもの

• LightSwitch

• ミュージカル

• AKB48

わんくま同盟 東京勉強会 #65

今日の目標

皆さんの中の

LightSwitch のスイッチを

入れていただくこと

これが結構難しいんですが・・・

わんくま同盟 東京勉強会 #65

今日の内容

• シンプルな LS アプリの内部を見てみる

• アーキテクチャから LS を見てみる

• 画面デザイナーから LS を見てみる

• データデザイナーから LS を見てみる

• LS には “出来ない” ことを見てみる

• (おまけ) エクステンションを見てみる

アーキテクチャを起点に

「LightSwitchで出来ること」を見てみます

わんくま同盟 東京勉強会 #65

LightSwitch アプリ開発の大きな流れ

モデル 定義

画面 デザイン

カスタマイズ (コード追加)

繰り返し

最後にデプロイ

わんくま同盟 東京勉強会 #65

シンプルな LightSwitch アプリの内部を見てみる

「テーブル定義と画面定義だけ」の場合

(コード追加をしていない状態)

テーブル

画面

わんくま同盟 東京勉強会 #65

ApplicationDefinition.lsml

わんくま同盟 東京勉強会 #65

デザイナーでの操作は ApplicationDefinition.lsml に

わんくま同盟 東京勉強会 #65

LightSwitch アプリケーションのアーキテクチャ

http://blogs.msdn.com/b/lightswitch/archive/2010/08/09/

the-anatomy-of-a-lightswitch-application-series-part-2-the-presentation-tier.aspx

わんくま同盟 東京勉強会 #65

カスタマイズの対象と方法

変更不可

画面デザイナーで定義+画面クラスコード

データクラスコード

画面クラスコード

データデザイナーで

定義 (エクステンション)

画面デザイナーで

定義

※この通りに区分

できないものもある

わんくま同盟 東京勉強会 #65

コードが生成される場所

Server

プロジェクト

Client

プロジェクト

Data

フォルダー

バリデーション 更新の検知

自作の

汎用クラス

Common

プロジェクト

※この通りに区分

できないものもある

わんくま同盟 東京勉強会 #65

プロジェクト間の呼び出し

Server

プロジェクト

Data

フォルダー バリデーション 更新の検知

自作の

汎用クラス

Client

プロジェクト

Common

プロジェクト

わんくま同盟 東京勉強会 #65

画面デザイナーの構成

わんくま同盟 東京勉強会 #65

[データ項目の追加] ダイアログボックス

わんくま同盟 東京勉強会 #65

クエリパラメーターとパラメーターバインド

わんくま同盟 東京勉強会 #65

データデザイナーで出来ること

わんくま同盟 東京勉強会 #65

LightSwitch には “出来ない” こと

ユーザーの操作の検知

(コントロールのイベントハンドラ)

が “出来ない” !

わんくま同盟 東京勉強会 #65

LightSwitch に “出来る” ことの例

クエリの追加 メソッドの追加

クエリの作成 計算されたプロパティ

ボタンの追加

わんくま同盟 東京勉強会 #65

(おまけ) エクステンションを見てみる

データソース

※完全に分割できる

わけではない

わんくま同盟 東京勉強会 #65

ソリューションを見てみる

わんくま同盟 東京勉強会 #65

“Design” = プロパティウィンドウ は 2種類必要

“.Design”

アプリ開発時のプロパティウィンドウ

WPF でデザイン

“.Client.Design”

デバッグ実行時のプロパティウィンドウ

Silverlight でデザイン

わんくま同盟 東京勉強会 #65

まとめ

• アーキテクチャを起点にすると

LightSwitchで出来ることが見えてきます

ご清聴ありがとうございました