Как в Domain-Driven Design(DDD) реализуется связь многие ко многим?

можно посмотреть пример тут, https://www.baeldung.com/jpa-many-to-many#2-implementation-in-jpa-1 , есть какая то сущность например студент и есть курс, у студента может быть много курсов, но и на курс может быть записано множество студентов, но на каждый курс студент может записаться с разной ролью, например на одном c правом посещения, на другом - с оценкой или еще что-то. В DDD работаем с корнем агрегата и по нему ищем необходимые данные, но тут нужно работать как со студентами так и с курсами, то есть запрос может быть покажи сколько студентов записаны на этот курс, так и наоборот - на какие курсы записан этот студент. Как правильно реализовать согласно DDD ? у меня пока идея сделать 2 агрегата, в одном корень менеджер , в другом курс и связь 1-М

student(id) -> assigment_course(id, student_id, course_id, role)
course(id) -> assigment_student(id, student_id, course_id, role)

Ответы (0 шт):