이펙티브 헥사고날 아키텍처
최근에 [만들면서 배우는 클린 아키텍처]를 읽고, 개인 프로젝트에서 헥사고날 아키텍처를 실험해 봤다. 이번 실험으로 기존에 계층형 아키텍처를 사용하면서 느꼈던 단점에 대한 괜찮은 해결법을 발견했다. 가능하다면 앞으로 진행하는 모든 백엔드 프로젝트에 헥사고날 아키텍처를 적용할 예정이다. 물론, 나중에 더 괜찮은 아키텍처를 발견하면 갈아탈 생각이다. 내가 생각하는 계층형 아키텍처의 단점은 작업자에 따라 비즈니스 로직의 구현 위치가 달라질 수 있다는 점이다. 단순한 계층형 아키텍처는 웹(컨트롤러) → 도메인(서비스) → 영속성(레파지토리) 순으로 의존성이 설정된다. 의존성 방향으로 데이터가 전파되기 때문에, 의존성의 마지막 단계인 영속성 계층에 비즈니스 로직이 쌓일 가능성이 있다. 팀에서 규칙을 정하면 이 현..
2024.08.30