지금까지 아키텍처에 대해 많은 이야기를 나눴다.
코드를 어떻게 작성하고 어디에 위치시킬지 결정하는 데 있어 우리를 안내해 줄 목표 아키텍처를 가지게 됐다.
하지만 일정 규모 이상의 모든 프로젝트에서는 시간이 지나면서 아키텍처가 서서히 무너지게 된다.
계층 간의 경계가 약화되고, 코드는 점점 더 테스트하기 어려워진다.
이번 장에서는 아키텍처 내의 경계를 강제하는 방법을 살펴보자.
아키텍처 경계를 강제하는 여러 가지 방법에 대해 이야기하기에 앞서 아키텍처의 어디에 경계가 있고,
경계를 강제한다
는 것이 어떤 의미인지 살펴보자.
의존성 규칙에 따르며 계층 경계를 넘는 의존성은 항상 안쪽 방향으로 향해야 한다.