
2026년 Pycon NL에서 헹크얀 판 하셀라르(Henk-Jan van Hasselaar)는 소프트웨어 아키텍처의 목적을 앞으로의 변경 비용을 낮추는 데 두고, 비즈니스 규칙을 외부 변화로부터 보호할 구조를 마련해야 한다고 설명했다.
응집도는 모듈 안의 요소들이 같은 목표를 위해 함께 일하는 정도이고, 결합도는 한 부분을 바꿨을 때 다른 부분에 미치는 영향의 범위다. 발표는 높은 응집도와 느슨한 결합을 바람직한 방향으로 제시했다. 파이썬은 아키텍처 경계를 강제하지 않고 타입 힌트도 실행 단계에서 강제하지 않으므로, 구조를 설계하고 지키는 책임이 개발자에게 있다고 짚었다.
데이터베이스와 API를 분리하는 것만으로는 결합을 없애기 어렵다. 데이터베이스 변경이 ORM에 이어 뷰 함수까지 영향을 줄 수 있다. 발표에서 제안한 방법은 도메인 모델을 두 계층 사이의 계약으로 삼는 것이다. 그러면 데이터베이스 변경은 도메인 객체를 만드는 코드에 영향을 주지만 뷰 함수는 영향을 받지 않을 수 있다. 뷰 함수에 비즈니스 로직이 섞이면 서비스 계층으로 옮기고, 도메인 모델을 출력 형식으로 변환하는 어댑터를 둘 수도 있다.
발표 요약은 원문에서 확인할 수 있다.
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요