아키텍처: 코드를 어떻게 작성하고 어디에 위치시켜야 하는가
일정 규모 이상이 되면 아키텍처는 서서히 무너지고, 계층 간 경계가 약화되고, 테스트하기 어려워지고, 새로운 기능을 구현하는 데 더 많은 시간이 든다.
= 의존성이 올바른(안쪽) 방향을 향하도록 강제한다.
= 점선(허용되지 않은 의존성)을 없앤다.
자바에서 제공하는 가장 기보적인 도구