今のプロジェクトは3人ほどのメンバーで開発しており、PofEAAのActiveRecordパターンに沿ってデータベースアクセス部分を実装しています。Javaの開発では、J2EEパターンのDAOパターンを採用することが多く、ActiveRecordパターンからDAOパターンへ変えたほうがよいのではないかという意見がありました。しかし、現在開発しているものは将来に渡ってデータベースを変更する可能性が低いので、あえてDAOパターンにするメリットがないのではないかと思っています。そこで、質問したいのは、このような状況においてあえてDAOパターンを使うメリットがあるのかということです。実際に現場でDAOを採用されている方のご意見をお聞かせください。
Hi,
>Javaの開発では、J2EEパターンのDAOパターンを採用することが多く
まず、システムの規模が大きいとか、今後DBを分散するとかそういう予定が無い限り
DAOパターンは、技術者の自己満足です。
流行なので使っても良いと思います。
回答ありがとうございます。
>DAOパターンは、技術者の自己満足です。
私自身このように感じていたので、参考になりました。
DAOを使うことで、レイヤ間の依存性を少なくできるメリットは認識しています。
ただ、依存性を少なくすることの狙いは、フレームワークやデータベースの変更に強くするためという側面が強いと思っています。
少人数の開発で、データベースやフレームワークなどの変更を行う可能性が低い場合においては、変更を考慮しないのであれば、DAOは工数が増えることがデメリットになるのではないか?それを補って余りあるメリットがあるのか?ということを聞きたくて質問をしました。