이전 강의에서 Product 와 Brand 를 join 하지 않고 각각 Select 함으로서 성능상의 불이익이 있었는데 Aggregate 단위로 묶여있었기 때문이군요. 데이터의 일관성을 위해 Aggregate Root 를 통해 접근가능하도록 연습 많이 해보도록 하겠습니다!
네 정확하게는 Product, Brand는 서로 다른 Aggregate이니까 JOIN해서 가져오지 않고 각각의 (productRepository, brandRepository) 리포지토리를 통해서 데이터를 가져왔던 것입니다. Review는 Product Aggreagte에 속해있는 Entity라서 Product Aggregate root를 통해서 가져왔습니다 :)