들어가며
핵심업무 규칙은 보통 핵심 데이터를 요구함.
은행 대출업무규칙에서 대출 잔액, 이자율, 지급일정을 예로 들 수 있음.
엔티티 = 핵심 규칙 + 핵심 데이터
엔티티
핵심 업무 데이터를 기반으로 동작하는 핵심 업무 규칙을 구체화한것임.
대출 엔티티를 UML클래스로 표현
대출클래스는 핵심업무개념을 표현하므로 독립적으로 존재해야하며 DB, 사용자 인터페이스 등에 오염되면 안됨.
유스케이스
유스케이스는 사용자가 제공하는 입력, 사용자에게 보여줄 출력, 출력을 생성하기 위한 처리 단계를 기술함.
즉, 엔티티 내의 핵심 규칙과는 반대로 유스케이스는 애플리케이션에 특화된 업무 규칙을 설명함.
Customer는 엔티티이며 유스케이스는 Customer를 언급함으로써 참조함.
그러므로 유스케이스는 엔티티의 핵심업무규칙을 제어함.
유스케이스는 사용자 인터페이스를 기술하지않음.
→ 이보다 애플리케이션에 특화된 규칙을 설명하기 때문.(사용자와 엔티티사이의 상호작용 규정)
유스케이스(저수준)는 엔티티(고수준)을 의존함.
요청 및 응답 모델
요청 및 응답 모델은 독립적이어야함.
→ 이 모델에 의존하는 유스케이스도 해당 모델이 수반하는 의존성에 간접적으로 영향을 미침.
'📚 Book > Clean Architecture' 카테고리의 다른 글
22장 클린 아키텍처 (0) | 2020.02.22 |
---|---|
21장 소리치는 아키텍처 (0) | 2020.02.22 |
19장 정책과 수준 (0) | 2020.02.22 |
18장 경계해부학 (0) | 2020.02.22 |
17장 경계 : 선긋기 (0) | 2020.02.22 |