Есть ли разница между шаблоном DAO и шаблоном Data Mapper? Является ли DAO всего лишь одним из решений Data Mapper?
В чем разница между DAO и Data Mapper
comment
Не могли бы вы также пометить эти шаблоны?
- person David Grant   schedule 29.01.2009
Ответы (1)
На самом деле я бы не назвал DAO «шаблоном». Насколько я понимаю, DAO — это в значительной степени то, чем оно является — объект доступа к данным», который инкапсулирует детали доступа к постоянному хранилищу данных и, вообще говоря, не имеет ничего общего с базой данных:
interface IBlogDaoService
{
Blog GetBlog(long id);
void SaveBlog(Blog blog);
}
Понятно, что реализации могут использовать либо БД (в этом случае вполне логично использовать Data Mapper), либо простой механизм хранения файлов XML.
Data Mapper, с другой стороны, больше похож на шаблон, который определяет слой, отвечающий за преобразование графов объектов в памяти в реляционную структуру.
person
Anton Gogolev
schedule
29.01.2009