
문제가 생겼다 엄청큰 문제..

흰 선이 지금 상황이고 빨간 선이 회원탈퇴를 구현하면서 해야하는 상황이다.
보면 알겠지만 생성될때 서로서로 필요한 형태가 되어버려서 순환참조 문제가 일어난다ㅏ.
서비스단에서 다른 Repository를 여러개 참조하게되면 낮은 수준 참조 문제로 객체간의 결합도가 훅 떨어져버려서 이번에는 Repository가 아닌 서비스를 참조하도록 설계했었다..
그런데?? 한 서비스 내에서 다른 데이터베이스의 정보가 필요하다보니 선언하게되고...
그렇게 순환참조 문제가 생겨부렸다.
두 개 이상의 객체, 테이블, 또는 모듈이 서로를 참조하면서 끝없이 연결되는 상황을 의미함
이번 프로젝트에서는 직접 다른 Repository를 참조하는 방식보다 서비스 인터페이스를 활용하여 참조하는 방법을 고려했다.
하지만, 실제 적용 과정에서 순환 참조 문제가 발생하여 팀 내부에서 논의한 끝에 Repository를 직접 참조하는 방향으로 결정했다.
이 경험을 통해, 여러 Repository를 참조하는 과정에서 레이어 설계를 더욱 철저히 검토해야 한다는 교훈을 얻었다.
앞으로의 협업에서는 참조 구조를 명확하게 정의하고,
설계 단계에서 순환 참조 가능성을 사전에 차단할 수 있도록 더욱 신중한 접근이 필요할 것이다.
최혁님의 순환참조 오류일대기