DAO Лучшие практики: Опрос родителей / детей - PullRequest
3 голосов
/ 19 ноября 2009

Учитывая, что у вас есть модель предметной области с простыми отношениями родитель / потомок, и у каждого объекта есть свой собственный связанный DAO, например:

Author
AuthorDAO
Book
BookDAO

Если я хочу добавить метод DAO для получения книг определенного автора, какое для этого место лучше?

class AuthorDAO
{
    List<Book> getBooks(Author author);
}

или

class BookDAO
{
    List<Book> getBooks(Author author)
}

Ответы [ 2 ]

3 голосов
/ 19 ноября 2009

Я бы поместил Book искатель на BookDAO. Это то место, где я бы ожидал, независимо от его параметров. Если вы хотите найти книгу, вы не хотите сканировать все DAO, чтобы найти правильного искателя. Помещение этого в другое место не поможет пользователям API.

3 голосов
/ 19 ноября 2009

BookDAO, потому что вы хотите получить информацию о книгах.Book является основным предметом здесь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...