«Классы DAO никогда не должны вызываться напрямую из клиента (Services и другие потребительские классы). Клиенты всегда должны вызывать объекты домена, которые, в свою очередь, должны вызывать DAO для сохранения данных в хранилище данных».
Нет, я думаю, что это неправильно.
Доменные объекты, вероятно, также не должны ссылаться на репозитории.
Если объекту домена необходимо сотрудничать с другимидоменные объекты, он может вызывать доменные события или принимать другие доменные объекты в качестве параметров для методов (в этом случае клиент / вызывающая сторона извлекает все необходимые доменные объекты через репозитории).