[iOS] DIContainer의 강한 참조는 의도된걸까요? (feat. ARC)
·
iOS/iOS
DIContainer를 적용하면서 리팩토링이 마무리 되었지만, 아직 남아있는 호기심(?) 때문에 제가 작성한 코드를 들여다보고, 여러 레퍼런스도 찾아보고, Swinject 코드를 뜯어보면서 DIContainer에 대해 더 공부를 하고 있었습니다. 코드를 살펴보던 중 한 가지 궁금한 점이 생겼습니다. 제가 구현한 DIContainer는 의존성을 저장하기 위해 딕셔너리를 사용하고 있는데, Swift의 딕셔너리는 강한 참조로 유지합니다. 그렇다면 이 구조에서 컨테이너가 객체를 강하게 참조하는 것은 단순한 구현상의 선택일까요, 아니면 DI 설계 관점에서 의도된 동작일까요? 이 궁금함을 해결하기 위해 나름의 연구를 진행하게 되었습니다. 그래서 이번 글에서는 DIContainer 내부에서 발생하는 강한 참조를 중심..