コンポーネントについて

概要図


コンポーネントの概要は、下図になります。

概要図(クラス関係・詳細)


さらに、詳細の内容を下記の図で表します。

構成説明

コンポーネントは大別すると3種類のクラスで構成されます。

  • ①.データベースのテーブルをカプセル化したクラス。
  • RawCasioBaseから継承するクラスです。
  • スキーマ名を定数として提供すること。
  • テーブル名を定数として提供すること。
  • 全てのフィルド名を定数として提供すること。
  • 必須フィルドを指定すること。
  • 共通部品[Table/Row]を使わない場合は、フィルドは変数として一つずつ定義することでデータオブジェクトとして使うように
  • ②.①のクラスを使ってデータベースへの読み書き処理を行うクラス。
  • DbManagerから継承するクラスです。
  • フィルド定数は、必須ではないです。
  • テーブルに保存する固定値について、意味付け定数として定義するように
  • メイン・テーブル・オブジェクト①を設定すること
  • データへのアクセスロジック(検索、追加、訂正、削除)を提供すること
  • 複数テーブルを扱えること
  • 複数追加、訂正、削除などの更新を一回で行うときに、 トランザクション を使うように
  • できるだけ、DbManagerに提供しているメソッドを利用するように、足りない場合は拡張してください。
  • 固定値定数などを定義する必要なくて、拡張メソッドもない場合は、継承することも必要がなくて[DbManager]を使ってください。
  • XXXDbManagerにて、 XXXBDbManager の拡張メソッドを呼び出したい場合は、 XXXBDbManager のオブジェクトを新規して使えますが、DbManagerのメソッドなら、テーブル・オブジェクトしか変更できないので、XXXBDbManagerを利用しないと推薦します。
  • ③.②で取得したデータを管理しUI層へのI/Fを提供するクラス。
  • 画面プログラムでは、データベース(データコンポーネント)へのアクセスロジックを集めるI/F
  • 共通データ構造[Table/Row]を使う場合、予め列情報などを定義すること
  • 共通データ構造を使わない場合は、①のデータオブジェクトを使ってください。