brand와 product
aggregate 영역이 엔티티(product)와 엔티티(review)간의 생명 주기가 밀접한 관계를 갖고 있는 것들을 하나의 영역으로 묶은 것이라고 말씀해주셨는데
그럼 농심이라는 brand가 있고 농심 브랜드에 속한 양파링, 새우깡이 있을 경우에 어느날 농심 브랜드가 퇴점을 하게된다면 농심이라는 brand의 product인 양파링, 새우깡은 같이 삭제가 될테니 brand와 product를 aggregate 영역으로 묶을 수 있는건가요?
답변 1
1
네 맞습니다. 비즈니스 규칙이 Product와 Brand 관계를 강하게 한다면 하나의 Aggregate로 묶을 수 있을 것입니다. 하나의 Aggregate로 묶는다면 Brand가 Aggregate root가 될 수 있겠네요.
이 강의에선 실제로 복잡한 비즈니스 규칙을 구현하지 않아서 Product, Brand 간 Aggregate 경계가 불분명해서 이런 질문이 발생한 것 같습니다. 하지만 Brand, Product가 서로 다른 Aggregate로 존재할 수 있는 케이스가 있습니다.
첫번째는, 쿠팡 같이 같은 브랜드를 수많은 셀러들이 판매하는 비즈니스에서 관찰할 수 있습니다.
만약 Brand가 독립적으로 관리되며, Product와의 직접적인 관계가 비즈니스 로직에 크게 영향을 미치지 않는 경우입니다. 예를 들어, 여러 제조업체가 동일한 Brand를 사용하는 상황에서, Brand의 변경이나 관리가 Product에 직접적인 영향을 주지 않는 경우, Brand와 Product는 별도의 Aggregate로 관리될 수 있습니다.
두번째는, 무신사처럼 패션 브랜드가 자사브랜드를 판매하기 위해 입점하는 형태의 비즈니스일 것 같습니다. 실제로 강의에서도 이 비즈니스 형태를 생각하고 Brand를 Product를 같은 Aggregate 에 포함시키지 않았습니다.
Brand가 주로 마케팅이나 브랜딩 목적, 정산으로만 사용되고, 실제 Product의 관리나 로직과는 거리가 먼 경우, 각각을 독립된 Aggregate로 관리하는 것이 효율적일 수 있습니다.
3강 질문
0
15
1
2강 nodejs 3단계 설명 질문
0
33
1
useEffect와 lifecycle문의
0
26
2
프론트엔드 학습 수준 문의
0
37
2
리액트 챕터별 코드에서 eslint 설정파일이 없어요
0
47
2
도메인 모델에서 관계와 규칙을 구분하는 방법
0
37
2
애그리거트 질문있습니다!
0
31
2
fetchBoardsOfMine, fetchBoardsCountOfMine 에러 문의드립니다
0
36
1
데이터 로딩중 화면만 계속 나와요!!
0
54
2
퍼블리셔일경우 어느정도 수준까지 강의를 들어야할까요
0
79
2
깃 이메일이랑 비번이 필요하다고 하네요
0
35
1
이후의 커리큘럼 문의
0
102
2
https://my-company.site/ 접속
0
61
3
map API
0
36
1
로그인 기능 구현 (Application Layer 실습) 에서의 질문
1
165
2
바로 실무에 적용할 수 있는 내용일까요?
1
367
1
몇가지 질문
2
386
3
다음 강의는 언제 나오나요?
1
360
1
Bounded Context 와 Aggregate 질문있습니다
1
421
1
성능상의 불이익
1
306
1
소스코드
0
413
2
review write관련
1
285
1
value object 관련
1
308
1
phone.create함수 파라메터 관련
1
258
1





