# 共通ドキュメント

## ドメインモデル

### 概要

データの属性、アクセス方法、検証条件などを定義する。

### 実装クラス

クラス名 | 概要
--- | ---
TableRow | Entityの元になるテーブルの属性を定義する。AbstractTableRowの実装。t2m.exeにより自動作成
TableAccess | Entityの元になるテーブルの入出力を定義する。ValidatorBaseの実装。t2m.exeにより自動作成
TableValidator | Entityの元になるテーブルの妥当性検査の方法を定義する。t2m.exeにより自動作成
TableProperties | Entityの元になるテーブルの列情報を定義する。t2m.exeにより自動作成
Entity | データの属性、導出項目などを定義する
DataAccess | データの永続化に関する操作を定義する
DataValidator | データの妥当性検査の方法を定義する

### 関連クラス

クラス名 | 概要
--- | ---
CFW.Database.Conneciton | データ保存への接続。インスタンスの生成にはConnectionFactoryを使用する
CFW.Database.ConnecitonFactory | Connectionを生成する
CFW.FieldProperty.FieldProperty | テーブルの列情報(列名、テーブル名、タイプ、長さ、精度etc...)を定義する。Parameterの型情報、検証のための型長さ情報他に使用する
CFW.Validators.ValidatorBase | エンティティ検証クラスの抽象。
CFW.Validators.FieldValidator | 項目検証クラス。
CFW.Database.AbstractTableRow | Entity,Tableの元となる抽象。テーブル編集状態などを保持する。DataRowからの初期化を定義する。
CFW.Database.Command | データベースへの選択、更新、追加、削除のクエリーをパッケージ化したもの。クエリー文字列とパラメータから成る。
CFW.Database.Parameter | Command実行のためのパラメータ
CFW.Database.TableCommand | SELECT,UPDATE,INSERT,DELETEを実行するCommandを生成する。