вы спроектировали домен аутентификации?
Включили бы туда пользователей или пользователей вынесли бы в отдельный контекст?
У пользователей будет только агрегат или агрегат и сущность:
a)
class UserAggregate{
id: string
username: string
....
}
b)
class UserEntity {
id: string
username: string
....
}
class UserAggregate {
user: UserEntity
}
?
Спрашиваешь про аутентификацию, а в примерах пользователь)) Можно, просто определяешь события, команды, описываешь свойства домена, его методы Например события: - Пользователь авторизован - Пользователь разлогинился - Протух токен - Сгенерирован токен и т.д. Команды: - Зарегистрировать пользователя - Авторизовать пользователя - Создать токен и т.д. Свойства домена: id user token ... Метода домена: - проверитьТокен - создатьТокен - разлогинитьПользователя - проверитьПароли И все в таком духе Репозиторий может работать как в командах, событиях запросах, так и в методах домена (редко, не очень хорошо, но допускается) Продолжать могу долго, многие со мной не согласятся и тоже будут правы, т.к. тема ДДД капец какая спорная)))
Да ддд это тема новичков, когда они понимают что это оверхед, уже назад пути нет так как тонна кода уже так написано, сами кор разрабы ддд проектов выпиливаются оттуда так как это не возможно поддерживать даже им, самый упоротые влюбляются в такой стиль и ничего вокруг не видят, что будет с ними в конце я хз, рано или поздно они так то должны прозреть)
Моё личное мнение: ддд это радость разрабу и смерть продукту
ддд это тема новичков?
тяпь ляпь и в продакшн)
У меня евенштормингом так вышло что пользователь находиться в контексте ауз. Я не знаю почему для ауза не надо контекст выделять. Даже в книгах говорится что ауз дженерик поддомен. Я то в бою не видал еще ддд. А так для меня тоже ддд начинается с предметной области. Изучаются единый язык, строятся контексты и уже потом в код попадает бизнес логика.
И не проблема. Например тебе нужно проверять существует ли пользователь, тогда через репозиторий ты дергаешь findUser, а в реализации уже используешь очередь или фасад юзера, получается в контексте ауф ты запрашиваешь данные из другого домена, это тоже норм)
Ага, спасибо большое 🙏
Обсуждают сегодня