상품 카탈로그
무엇을 파는지와 얼마인지. 가격의 유일한 출처다.
:8080
클래스
5
포트
1
interface
엔드포인트
2
화면
1
가드레일
2
critical 1
이 도메인의 자리
100%휠로 확대 · 끌어서 이동
타입 구조 (5)
Spring 소스를 직접 읽어 그린다. 계층 사이 화살표만 그렸다 — 타입 하나하나를 이으면 읽을 수 없다. 파란 테두리가 포트(interface)다.
100%휠로 확대 · 끌어서 이동
app 1domain 2infrastructure 1web 1포트 (1) — 도메인이 바깥에 요구하는 것
도메인은 DB 도 HTTP 도 모른다. 필요한 것을 인터페이스로 선언하고, infrastructure 가 그것을 구현한다. 의존이 뒤집히는 지점이다.
| 이름 | 하는 일 | 메서드 |
|---|---|---|
ProductRepositorydomain | - |
도메인 모델 (1)
Productrecord | 판매 상품. |
유스케이스 (1)
CatalogUseCase34줄 | 상품 조회. list()get() |
엔드포인트 (2)
100%휠로 확대 · 끌어서 이동
| 메서드 | 경로 | 컨트롤러 |
|---|---|---|
GET | /api/catalog/products | CatalogController |
GET | /api/catalog/products/{code} | CatalogController |
화면 흐름 (1개 화면)
이 도메인이 받는 화면끼리의 이동입니다. 다른 도메인으로 나가는 이동까지 함께 보려면 화면 흐름 → 상품 카탈로그 으로 갑니다.
100%휠로 확대 · 끌어서 이동
이 도메인을 쓰는 화면 (1)
사용자 앱
critical 가드레일 (1)
catalog-price-matches-order목록에 보이는 판매가와 실제 주문 생성 금액이 같아야 한다.