Clean Architecture

Clean Architecture란?

Clean Architecture란 Architecture Pattern으로 기존의 계층형 아키텍처가 가지는 의존성에서 벗어나도록 하는 설계를 제공한다.

클린 아키텍처의 핵심 원칙

  1. 관심사의 분리 (Separation of Concerns):

각 계층은 고유의 책임만 가진다. 이를 통해 변경이 필요한 코드의 범위를 최소화한다.

  1. 의존성 역전 (Dependency Inversion):

의존성의 방향이 바깥에서 안쪽으로 향하며, 안쪽 계층은 바깥쪽 계층을 모른다. 이를 통해 핵심 로직이 외부 변화에 영향을 받지 않는다.

image.png

image.png

클린 아키텍처는 아래와 같은 4개의 동심원 계층으로 구성된다.

  1. Entities (엔티티):
  1. Use Cases (유즈케이스):
  1. Interface Adapters (인터페이스 어댑터):