Приветствую :) Разъясните плиз :) Пример из книжки (не DDD, об этом вопрос), поэтому мб будет кому то знакомым.
Есть компания (аксессоры - количество менеджеров, домен компании ),
Есть юзер (аксессоры - емейл, тип пользователя)
экшен: смена емейла у пользователя. условия: если емейл подходит под корпоративный домен компании, то у польхователь становится менеджером (ну и наоборот), а у компании меняется количество менеджеров.
Следуя принципу TellDontAsk, все действия инкапсулированы + для уменьшения сервисного слоя компания передается прямо в метод пользователя changeEmail. Код (C# вроде)
https://pastebin.com/hWrLkRCqВопрос. По DDD есть такое что "Агрегаты общаются друг с другом только по ссылке" для уменьшения каплинга в системе. Тут, как я понимаю, это два небольшие, но агрегата. Что тогда означает "только по ссылке", раз тут юзер знает о компании в своем методе? Как тогда должно быть? Или "только по ссылке" относится для агрегатов в разных ограниченных контекстах, а в одном контексте агрегаты вполне могут знать друг о друге? Ну или я возможно не совсем понимаю значение "по ссылке", я это понимаю как один агрегат знает о другом только ID и больше никак с других агрегатом не связывается в своих методах .