개발_프로그래밍

Clean Architecture (클린 아키텍처) - 33장. 사례 연구: 비디오 판매 Case Study: Video Sales

_랄프_ 2023. 5. 12. 06:08
728x90

■ 33장 사례 연구: 비디오 판매 Case Study: Video Sales

웹사이트에서 비디오를 판매하는 소프트웨어 사례를 적용해 보자. 아래는 유스케이스를 분석한 것이다.

액터는 4개인데, 단일 책임 원칙에 따라 신규 기능의 추가나 기존 기능의 변경은 반드시 이 4개의 액터에게 기능을 제공하기 위해서여야 한다.

 

아래는 초기 컴포넌트 아키텍처의 모습이다.

 

각 경계를 구분으로 뷰, 프레젠터, 인터렉터, 컨트롤러가 나눠져 있는 전형적인 모습니다. 각 컴포넌트는 jar나 dll에 해당하지만, 뷰와 프레젠터를 합쳐서 같은 jar에 두고 나머지는 각각의 jar로 만들거나 나머지를 하나의 jar로 합치는 방법도 가능하다.

이처럼 선택지를 열어두면(컴포넌트를 독립적으로 컴파일/빌드 할 수 있는 환경으로 구성해 두면) 이후 시스템이 변경되는 상황에 따라 배포 방식을 조정할 수 있다.

위 아키텍처에서 제어흐름은 오른쪽에서 왼쪽으로 흐르고, 반대 방향의 화살표는 의존성 규칙을 준수하는 모습이다. 의존성은 높은 수준의 정책을 포함하는 방향으로 향한다.

<34장에서 계속>

 

반응형

 

728x90
반응형