Я не понимаю, каковы роли и ответственность класса factory. Я достаточно знаю, что класс factory должен быть resposible для создания объектов домена (совокупный корень) вместе с связанными с ним объектами и объектами значения.
Но что мне не понятно, где слой factory лежит с DDD-архитектурой? Должно ли factory звонить непосредственно в репозиторий, чтобы получить его данные или библиотеку сервисов?
Где factory вписывается в следующую структуру:
UI > Приложение > Домен > Сервиs > Данные
Кроме того, поскольку factory является единственным местом, разрешенным для создания объекта, вы не получите круговые ссылки, если хотите создать свои объекты в своих слоях данных и услуг?
Если роль класса factory заключается в создании объекта, то какие преимущества имеет уровень сервиса?
Я задал много вопросов и оценил любой ответ. Что мне не хватает, это пример приложения, демонстрирующий, как все слои в проекте, управляемом доменом, собрались вместе... Есть ли что-нибудь там?