복잡한 시스템일수록 구조가 중요하다. 클린 아키텍처는 유지 보수성과 확장성을 높이기 위해 설계된 아키텍처 패턴이다. (예제 코드는 NestJS 를 기반으로 했으며 추가 예제 코드는 SpringBoot+Lombok 이다.)


[1] 아키텍처 패턴이란?

(1) 정의

아키텍처 패턴은 **소프트웨어의 전체 구조를 어떻게 설계할지에 대한 ‘전략적인 청사진’**이다.

즉, 어떤 식으로 코드 구성 요소(모듈, 계층 등)를 나누고, 그 사이의 관계를 정할지를 정의한 일종의 설계 템플릿이다.

(2) 클린 아키텍처란?

1) 정의

2) 목적

3) 아키텍처 구조 (원형 계층 구조)