SHOEISHA iD

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

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

SQLも使えるオブジェクトデータベース「CACHE'」を知る

第6回 CACHÉを活用した.NETアプリケーション開発(前半)

SQLも使えるオブジェクトデータベース「CACHE'」を知る 6


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

今回から前・後編で、.NETアプリケーションからオブジェクトデータベース「Cache'」を活用する方法を解説します。前編では、Cache' Managed Provider for .NETの概要と使い方を説明します。

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

はじめに

 連載の第6回、第7回では、Caché Managed Provider for .NETを使って、.NETアプリケーションからCachéを活用する手順を解説します。Caché Managed Provider for .NETは、O/Rマッピングを必要とせず、共通のAPIを使用してリレーショナルアクセスとオブジェクトアクセスを同時に実現します。前半の今回は、Caché Managed Provider for .NETの概要と使い方を説明します。

対象読者

  • アプリケーション・システム開発をしている人
  • データベース関連の開発およびメンテナンスをしている人
  • JavaやC#でプログラミングしている人

.NETアプリケーション開発におけるCACHÉの優位性

 Caché Managed Provider for .NETには、次の4つの特徴的な機能があります。

  • ADO.NETのAPIによるリレーショナルアクセス
  • .NETアプリケーションでは、.NET Frameworkのライブラリを利用してデータベースにアクセスします。この仕組みは、Cachéでも同じように利用でき、リレーショナルアクセスが可能です。
  • 自動生成されるプロキシクラスによるネイティブなオブジェクトアクセス
  • Cachéに格納されている永続オブジェクトに対応するプロキシクラスによって、オブジェクトの永続化や抽出、データキャッシング、ライフサイクル機能などが提供されます。
  • .NETマネージドコードによる.NET環境の利用
  • .NETアプリケーション標準動作環境のCLR(Common Language Runtime)が提供する、セキュリティなどさまざまなサービスが利用可能です。
  • マルチスレッドの.NETアプリケーション
  • データベースを扱うアプリケーションでは、処理コードのマルチスレッド化によって、アプリケーション全体のパフォーマンスアップが期待できます。Caché Managed Provider for .NETはスレッドセーフのため、マルチスレッド環境が利用できます。

 このように、Caché Managed Provider for .NETを利用すれば、.NETが提供する機能を活用した高信頼性・高機能の.NETアプリケーション開発が可能となります。なお、Caché Managed Provider for .NETを使用するには、以下の開発環境が必要です。

  • Caché 5.2以降
  • Visual Studio 2005
  • .NET Framework 2.0以降

 ただし、本稿では、Cachéによる.NETアプリケーション開発を紹介するという主旨から、「Visual Studio 2005」ではなく、無償版の「Visual C# 2005 Express Edition」を利用します。以降に紹介するサンプルの中には、このExpress Editionでは扱えないものもありますが、ご了承ください。

CACHÉに添付されるサンプルコードの説明

 Cachéには、.NETアプリケーション開発の例として、以下の5つのサンプルが添付されています。標準的なインストールをした場合、そのサンプルは「C:\Cachesys\Dev\dotnet」(Caché 2007.1では「C:\InterSystems\Cache\Dev\dotnet」)ディレクトリにあります。異なるディレクトリにインストールした際は、以降の解説の該当箇所を読み替えてください。

 これらのサンプルアプリケーションは、SAMPLESネームスペースのSampleパッケージにあるクラスを使用します。下図はSampleスキーマのテーブル一覧です。

SAMPLESネームスペースのスキーマSampleのテーブル
SAMPLESネームスペースのスキーマSampleのテーブル

adoform

 Sample.Personデータベースへのアクセスとその操作を行う簡単なプログラムです。同じ内容のものが、C#、BasicおよびC++の3つの言語で用意されています。

サンプルadformの実行画面(C#の場合)
サンプルadformの実行画面(C#の場合)
サンプルadformの実行画面(Visual Basicの場合)
サンプルadformの実行画面(Visual Basicの場合)
サンプルadformの実行画面(C++の場合)
サンプルadformの実行画面(C++の場合)

 この3つの画面のように、Caché Managed Provider for .NETを利用すれば、3つの異なるプログラミング言語でも同じ処理を行うアプリケーションが構築可能です。

bookdemos

 短いサンプルルーチンがまとめられ、簡単に修正できるテストベッドとして提供されています。

サンプルbookdemosの実行画面
サンプルbookdemosの実行画面

console

 Caché.NETプロジェクトの最小要件を示すコンソールプログラムです。

サンプルconsoleの実行画面
サンプルconsoleの実行画面

mobiledevice

 CachéClientアセンブリのモバイルバージョンで、一時的な接続を扱う方法を示します。このサンプルは、「Visual C# 2005 Express Eition」では利用できません。

サンプルmobiledeviceの実行画面
サンプルmobiledeviceの実行画面

objbind

 ADO ProviderオブジェクトとCachéプロキシオブジェクトの両方を使用して互いを補完するコードの記述方法を示しています。

サンプルobjbindの実行画面
サンプルobjbindの実行画面

次のページ
CACHÉ Managed Provider for .NETの使い方 Part 1

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

  • このエントリーをはてなブックマークに追加
SQLも使えるオブジェクトデータベース「CACHE'」を知る連載記事一覧

もっと読む

この記事の著者

トップスタジオ(トップスタジオ)

1997年の創立以来、一貫してPC/IT関連書籍、雑誌等記事の制作業務を手掛けるプロフェッショナル集団。翻訳・編集・DTPのほか、技術監修や著作も多数。

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

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

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/1576 2008/09/04 12:44

おすすめ

アクセスランキング

アクセスランキング

イベント

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

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

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

メールバックナンバー

アクセスランキング

アクセスランキング