私はStudentDriverを集合ルートとして持っています。各StudentDriverは複数のDrivingLogを持つことができ、各DrivingLogは複数のDrivingRecordを保持することができます。DDDでエンティティをネストする方法
彼らはお互いにつながっているので、私はそれが正しいと思います。しかし、もし私が、例えば、新しい運転記録を加えるつもりなら、どうすればいいのか理解できません。私はstudentdriver.addNewDrivingRecordToDrivingLog(...)を呼び出すか、最初にユーザーから運転記録を取得して、これにdrivingrecordを追加しますか?つまり、メソッド名が長くなりすぎて、要素へのアクセス方法がわからないということです。
誰かがあなたがStudentDriverのメンバーとやりとりすることになっていることを説明することができますか、この集計が正しい場合でも、
したがって、他の集約ルーツにそれらがない限り、集計ルート内にエンティティなどを保持するのに間違ったことはありませんか?同様に、集合ルートの外側にエンタイトを一緒に置くことは悪くないですか? – LuckyLuke
私は、StudentDriverが集約ルートであるため、studentdriverの外にあるdrivinglogを構成し、drivinglogをドライブログに直接追加し、リポジトリを介して永続化される前にdriverlogsをユーザーに添付するのは悪くないと思いますか?集約すると、その中にあるものにまだアクセスできないということではありませんか? – LuckyLuke
もう一つ最後のこと:運転手に運転記録を追加する場合は、リポジトリ内の学生ドライバーを更新する必要がありますか?あなたは集計にentitesのための独自のリポジトリを持っていないのですか?だから、学生ドライバーの何かが変更を集めるたびに、学生ドライバーを「更新」しなければなりませんか? – LuckyLuke