ActiveObjectsにおけるアクティブレコードパターン
アクティブレコードパターン
重要なことは、アクティブレコードのオブジェクトは、データベースアクセスをカプセル化していることです。オブジェクトがデータアクセスの機能を提供していると言い換えてもいいでしょう。
もっと具体的にいえば、エンティティクラスは、フレームワークで提供されているデータアクセス機能を持ったクラスを継承して作るということです。
ActiveObjectsについてもこのように考えないと、わかりづらいと思います。
AOにより、データベースはカプセル化(=データベースの複雑な構造を見えなく)されています。そのため、プログラマがDBの構造を意識する必要性はありません。実際にデータベースへアクセスするには、AOの提供するEntityクラスを継承すればよいのです。