DAO

DAOパターンに関してメモ。

●DAOパターン
ドメインロジックとデータベースの定義を分離するパターン。

ドメインロジック ⇔ DAOオブジェクト ⇔ データベース

●Data Access Object(DAO)とは、
ある種のデータベースや永続性機構の抽象化されたインタフェースを提供するオブジェクト。データベースの詳細を開示することなく特定の操作を提供する。(from wikipedia)

(1)公開インタフェース
ドメインロジックでは、DAOが提供するインタフェースを用いて、データベースにアクセスする。
(2)DAOの実装
DAOはデータベースごとに実装をする。DAOを利用するオブジェクトは、それを知らない。
(DAOオブジェクトはデータベースをカプセル化している)

●所感
DBにおいて、GUI設計におけるMVCパターン的なアーキテクチャパターンみたい。