LoginSignup
1
2

DAOパターン

Posted at

DAO とは...

  • Data Access Object の略
  • デザインパターンの一種で、データベースへのアクセスロジックを集約したクラスのこと
  • 業務ロジックとデータを取得するのを分離するために考えられたもの
  • DBへのアクセスロジックがテーブルごとに集約される
  • データベースへのアクセスはDAOを使用して行われる

DAO.png

メリット

  • メインロジックとデータベースアクセスの処理を明確に分けることで、修正や変更があった場合に、互いのクラスに影響を与えない

  • SQLが一カ所にあるため、使用しているSQLの一覧性がある

  • データベースアクセス処理の重複した記述を防ぎ、ソースコードがシンプルに!

DAO2.drawio.png

デメリット

  • どのクラスから参照されているか分からないので、同じ関数を複数クラスから使用している場合に考慮範囲が広がる(メンテナンスしづらい)
1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2