SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

EDN CodeZine出張所

Delphiユーザー必見の技術情報を集約した
「Delphi 2010 DataSnap活用ガイド」


  • このエントリーをはてなブックマークに追加

 DataSnap 2010は、DataSnap 2009に比べ、大幅な拡張と強化が行われ、かつDataSnapとMIDASのCOMベースのオリジナルバージョン以降の多くの改善も取り入れられています。この約60ページのBob Swart氏によるDelphi 2010 DataSnapの活用ガイドはDelphiユーザの必読資料となるでしょう。

  • このエントリーをはてなブックマークに追加

0. はじめに

 「DataSnap」(旧MIDAS)は、多層型のデータベースアプリケーションをRAD(Rapid Application Development)手法ですばやく構築するためのフレームワークです。DelphiC++ Builderといった、エンバカデロ・テクノロジーズ製の開発ツールで利用することができます。もともとWin32ベースのWindowsネイティブアプリケーション開発を前提とした技術でしたが、前バージョンのDelphi 2009からはCOM依存性を排除して再構築され、.NETクライアントからも接続できるようになりました。最新版のDelphi 2010ではさらなる機能拡充によって、WindowsサービスやWebサービス、インターネットサーバーAPIといった新しいターゲットやHTTP認証などをサポートし、適用範囲がかなり広がりつつあります。

 このデータベースを利用するさまざまなアプリケーションの構築に有益な「DataSnap」ですが、残念ながら紙面やWebにおいてまとまった日本語の技術資料がまだまだ少ないのが現状です。そのような状況の中、58ページに及ぶホワイトペーパー「Delphi 2010 DataSnap活用ガイド」(原著:BoB Swart氏)のダウンロード提供が2009年12月より開始され、無償で利用できるようになりました(個人情報の入力が必要)。

 DataSnapによるクライアントサーバーアプリケーション作成の初歩から、.NETやインターネットプロトコル、コールバックを活用した手法までステップバイステップで詳細に解説した貴重な日本語のドキュメントです。本稿では、その一部を簡単に紹介したいと思います。

「Delphi 2010 DataSnap活用ガイド」の目次より抜粋
1. DataSnap の歴史
  1.1 DataSnap サンプルデータ
2. DataSnap Windows ターゲット
  2.1. DataSnap サーバーサンプル
    2.1.1. マルチターゲットプロジェクトグループ . VCL フォーム
    2.1.2. マルチターゲットプロジェクトグループ . コンソール
    2.1.3. マルチターゲットプロジェクトグループ . Windows サービス
    2.1.4. Server Methods 
  2.2. DataSnap クライアント
    2.2.1. DataSnap クライアントクラス
  2.3. DataSnap サーバーの配布
    2.3.1. DataSnap クライアントの配布
3. DataSnap とデータベース
  3.1. TSqlServerMethod
  3.2. TDSProviderConnection 
    3.2.1. TDSProviderConnection クライアント
    3.2.2 データベースの更新
    3.2.3. 調停エラー
    3.2.4. 調停エラーのデモ
  3.3. DataSnap「データベース」の配布
  3.4. 既存のリモートデータモジュールの再利用
4. DataSnap フィルター
  4.1. ZlibCompression フィルター
  4.2. Log フィルター
  4.3. Encryption フィルター
5. DataSnap Web ターゲット
  5.1. Web アプリケーションデバッカ用実行形式ターゲット
  5.2. ISAPI ターゲット
  5.3. サーバーメソッド - 配布とクライアント
6. REST とJSON
  6.1. コールバック
7. DataSnap と.NET 
  7.1. WinForms クライアント
8. まとめ

1. DATASNAPの歴史

 DataSnapは、元来、Delphi 3で「MIDAS」、Delphi 4ではMIDAS II、Delphi 5ではMIDAS IIIとして、TCP/IP、HTTP、(D)COMの接続機能におけるCOMベースのリモートデータモジュールを構築するとても強力な手段として提供されてきました。Delphi 6からは、「DataSnap」という名称に変更され、Delphi 2007までこのフレームワークはほぼそのままで提供されていました。

 Delphi 2009で、DataSnapは再構築され、COM依存性の排除、リモートサーバーオブジェクトの軽量化が行われ、TCP/IPのみに限られていたクライアント接続が、Delphi Prism 2009では、.NETクライアントの構築もサポートしました。

 Delphi 2010では、DataSnap 2009アーキテクチャー上に、このフレームワーク向けの2つのウィザードで新しいターゲット(VCLフォーム、Windowsサービス、コンソール、さらにWebターゲットとしてISAPI、CGIまたはWeb App Debugger)をサポートし、HTTP(S)トランスポートプロトコル、HTTP認証、クライアントコールバック機能、RESTとJSONのサポート、圧縮(組み込み済み)と暗号化をサポートするフィルタを含む、新しい拡張された機能が提供されました。

1.1 DATASNAPサンプルデータ

 このホワイトペーパーでは、デモと使用例をあわせて演習していただくよう強くお勧めします。Delphiでは、DBX4、dbGo for ADOやその他のデータアクセステクノロジーなどにより、多くの異なったデータベースシステムをサポートしていますが、デモと使用例の演習を簡単にするために、以下のディレクトリ上のemployee.jdsデータベースと、BlackfishSQLを使用したDBX4をDBMSとして使用します。

 Windows XPでは、employee.jdsデータベースは、

C:\Documents and Settings\All Users\Documents\RAD Studio\7.0\Demos\database\databases\BlackfishSQL

フォルダ内に、Windows Vista、または Windows 7では、

C:\Users\Public\Documents\RAD Studio\7.0\Demos\database\databases\BlackfishSQL

フォルダ内にあります。

 画面ショットからお分かりのように、使用例の作成にはOSとしてWindows 7 Professionalを、そしてDataSnap ISAPIサーバーの配布にはWindows Server 2008 Web Editionを使用しています。

次のページ
2. DATASNAP WINDOWSターゲット

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
EDN CodeZine出張所連載記事一覧

もっと読む

この記事の著者

EDN編集部(イーディーエヌ編集部)

エンバカデロ・デベロッパーネットワーク(EDN)は、ソフトウェア開発者とデータベース技術者のための技術情報サイトです。Delphi、C++Builderをはじめとする開発ツールやER/Studioなどのデータベースツールに関連する技術記事、ビデオなどを提供しています。EDN編集部は、EDN記事と連携...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/4741 2012/06/13 13:55

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング