Clean Architecture 정리 - 5부 33 간략한 아키텍처 설계 단계
2025. 8. 13. 10:11

1. 액터 & 유스케이스 분석하기

  • 단일 책임 원칙에 따라 액터(시스템의 기능 변경의 주요 원인)를 구분함
    • 한 액터를 위한 변경이 다른 액터에 영향을 주지 않도록 설계함
  • 기능 변경의 이유는 반드시 특정 액터에게 해당 기능을 제공하기 위함이어야 함
    • 여기서 ‘기능’이란 프레임워크나 DB 기술이 아니라, 비즈니스 요구사항을 의미함

 

2. 컴포넌트 아키텍처 설계하기

  • 독립된 배포 단위는 개발 팀과 협의하여 결정함
    • 배포 단위 설정 예시:
      • 같은 액터의 기능별로 배포
      • 뷰, 프레젠터, 인터랙터, 컨트롤러 등 동일한 역할을 수행하는 컴포넌트끼리 묶어서 배포
      • 뷰와 프레젠터를 묶어서 배포
    • 배포 단위는 상황에 따라 변경될 수 있으므로 유연한 구조로 개발함

 

3. 의존성 관리 체크하기

  • 컴포넌트의 의존성이 더 높은 수준의 정책을 포함하는 컴포넌트로 향하는지 점검함
  • 고수준 컴포넌트가 저수준 컴포넌트를 의존하는 경우, 인터페이스를 활용해 의존성을 역전시킬 것

 

※ 본 글은 『Clean Architecture』(로버트 C. 마틴 저) 5부 33장을 기반으로 학습 목적으로 요약한 글입니다.

※ 이 글은 책의 내용을 요약한 것으로, 원문 없이 읽을 경우 오해의 여지가 있을 수 있습니다. 정확한 이해를 위해 원서의 정독을 권장합니다.