Visual Studio 2005による スマート クライアント入門 開発者カテゴリ

Download Report

Transcript Visual Studio 2005による スマート クライアント入門 開発者カテゴリ

開発者カテゴリ
Visual Studio 2005による
スマート クライアント入門
アジェンダ
スマート クライアント オーバービュー
スマート クライアントの基本構成
スマート クライアントのデプロイメント
スマート クライアントとは
スマート クライアントとは、次のように定義される
次世代クライアント ソフトウェアを具現化したもの
である :
エンド ユーザー デバイス (フル機能を持つ PC、PDA、
電話機) を最大限に活用する
Web サービスを使用する
オンラインとオフラインの両方で優れたユーザー
エクスペリエンスをサポートする
Web ベースのアプリケーションに関連する配置を簡略
化する
スマート クライアント アプリケーションの概要
業種別アプリケーション
クライアント
Web 層
インターネット /
イントラネット
ホスト システム
XML Web サービス
スマート クライアント
Windows フォーム、
.NET Compact Framework、
Office 2003
スマート クライアント アプリケーションの概要
ファット クライアント
スマート クライアント
フットプリントが大きい
配置が難しい
シン クライアント
充実したユーザー
エクスペリエンス
開発者の生産性
フットプリントが
小さい
ネットワーク依存
配置が簡単
"DLL 地獄"
応答性
容易な変更管理
貧弱なユーザー
エクスペリエンス
開発が複雑
アジェンダ
スマート クライアント オーバービュー
スマート クライアントの基本構成
スマート クライアントのデプロイメント
スマート クライアントの基本構成
クライアント
豊富な機能を持つユーザー インターフェイス
Web サービス アクセス
プロキシ クラス
オフライン機能
データセットによるデータ キャッシュ
ローカル ディスクへのデータ退避
オンライン、オフラインの識別
サーバー
XML Web サービス
ADO.NET によるデータベース操作
データセットを提供
スマート クライアントの基本構成例
Web サービスへのアクセス
非接続型のデータキャッシュ
サーバー
アプリケーションを
ダウンロード
スマート クライアント アプリケーション
プロキシ
クラス
連結
データセット
Web サービス
Visual Studio における UI 構築の基礎-1
Windows フォーム デザイナによるビジュアルな画面構築
ツールボックスからコントロールをドラッグ アンド ドロップ
画面に見合うソースコードが自動生成される
Visual Studio における UI 構築の基礎-2
イベント駆動型のプログラミング
ユーザーの特定操作 (イベント) に呼応して、特定のプロシー
ジャ (イベント ハンドラ) が実行される
各コントロールにはイベントが定義されている
Button コントロール ---- Click など
Visual Studio は、イベント ハンドラの雛形を自動生成できる
Visual Studio Tools for Office の紹介
Visual Studio 上で Office アプリケーションを開発可能に
するアドイン ツール
ドキュメント指向のソリューションに分離コード (codebehind) モデルを提供
Word、 Excel 用のロジェクト テンプレート
以前は Visual Basic for Applications (VBA) が唯一の選択肢
VBA の完全な置き換えではない
Visual Studio Tools for Office の紹介
UI 関連コントロールを
簡単にドラッグ・アンド・
ドロップできる
Office 関連メニューのマージ
Word や Excel をそのまま
画面デザイナとして使用
プロパティ ウィンドウ
をサポート
Web サービス (参考)
Web サービスとは
Web 上に公開されたアプリケーション ロジック
クライアントとサーバーの間は、XML データとしてやり取りする
<soap:Envelope xmlns:soap="...">
<soap:Body>
<Add xmlns="http://www.abc.org/">
<a>10</a>
<b>20</b>
</Add>
</soap:Body>
</soap:Envelope>
<soap:Envelope xmlns:soap="...">
<soap:Body>
<AddResponse xmlns="http://www.abc.org/">
<AddResult>30</AddResult>
</AddResponse>
</soap:Body>
</soap:Envelope>
※Web サービスは、第6回に取り上げます。
SOAPメッセージの解析は
ASP.NETランタイムが担当
<WebMethod> _
Public Function Add(ByVal a As Integer, _
ByVal b As Integer) As Integer
Return a + b
End Function
SOAPメッセージの出力は
ASP.NETランタイムが担当
Web サービスへのアクセス-1
Web 参照の追加
WSDL (Web サービス記述言語) を取得して、
Web サービスにアクセスするためのプロキシ クラスを生成
http://localhost/WebSrv/Service.asmx?wsdl
Web サービスへのアクセス-2
プロキシ クラス
Web サービスとのやり取りで必要な一連の手続き (HTTP、
SOAP) をカプセル化
SoapHttpClientProtocol 派生クラス
クライアント アプリケーションは、インスタンスを作り、メソッドを
呼び出すだけ
Public Class Service
Inherits System.Web.Services.Protocols.SoapHttpClientProtocol
~
End Class
Dim srv As New Service()
Dim ds As DsAdv
ds = srv.GetData()
アジェンダ
スマート クライアント オーバービュー
スマート クライアントの基本構成
スマート クライアントのデプロイメント
.NET における配置の特徴
配置の特徴 (復習)
プログラム ファイルには、実行に必要な情報がメタデータとして
含まれているので、システム レジストリに登録する必要がない
コピーするだけでインストールが済む
高度なバージョン管理ができる (後述)
「アセンブリ」と呼ばれる単位で管理される
配置方法 (復習)
XCopy による配置 (XCopy デプロイメント)
Windows インストーラを利用した配置
ノータッチ デプロイメント
ClickOnce
ノータッチ デプロイメント
(参考)
ノータッチ デプロイメントとは
Web ベースのダウンロードによる配置、自動更新
主な方法
リンクなどから、URL を指定してダウンロードする
クラス ライブラリのダウンロード機能を使用する
特徴
ユーザーを介さずに自動的にダウンロード、更新される
特定箇所にキャッシュされ、制限されたセキュリティ環境で実行
される
プログラムをダウンロード
ClickOnce による配置
ClickOnce による配置とは
ノータッチ デプロイメントの改良版
クライアント側は、クリックなどの簡単な操作によって、中央の
サーバーからアプリケーションのダウンロードが可能
.NET Framework 2.0 に基づく
スマート クライアントにとって重要なテクノロジー
新機能
オンラインのほかオフラインでの使用も可能
オフライン可能な場合、スタートメニューへの登録が可能
様々なアップグレードのオプション
ユーザー主導型のアップグレード、強制的なアップグレード
プログラミングによるきめ細かい制御
セキュリティの構成の自動化
マニフェストを利用した中央から制御が可能
Visual Studio 2005 の利用
発行ウィザード
配置先のロケーションを指定
Web サイト、FTP サーバー、共有ディレクトリ、ファイルパス
配置の種類
オンラインとオフラインの両方で可能、または、オンラインのみ
ClickOnce アプリケーションのマニフェストに署名が必要
予め既存のキーを指定、または、自動的に新規作成