모듈화를 할 때 독립성을 유지하는 것 뿐만 아니라 의존의 방향을 지키는 것도 중요하다고 합니다. 방향을 지키지 않으면 순환이 발생한다는데, 코딩에서 순환 참조가 일어나면 메모리 누수가 발생하는데 모듈간 참조가 발생하면 어떤 문제가 생길까요? 그래서 보통 DI라는 것을 선언해서 한군데에서 다 가져오는 코드를 많이 봤는데 이 글에서는 Composition Root라는 것을 사용했네요. Feature는 Interface를 제공하고 Composition Root에서 구현하는 것 같아요. 저는 iOS 앱을 혼자 만들어서 Player만 재사용을 위해 Pods로 분리해봤네요 그때는 빌드를 빠르게 하는 방법이 있을거라도 생각하지 못해서 당연히 모듈화가 빌드를 빠르게 한다는 것도 몰랐죠 업로드도 엄청 느려서 밥먹으러 갈 때 퇴근할 때 돌렸던 기억이 있네요. 프로젝트로 분리해보지 않았어도 네비게이션을 간접 접근으로 구현해봤다면 모듈화도 어렵지 않을 것 같네요. 물론 복잡성은 올라가니 글에 끝에 나온 말 처럼 장단점을 잘 생각해야 할 것 같습니다. Monolith는 하나의 돌, 거석이라는 뜻을 가졌다네요 통으로 된 그런 뜻 인 것 같네요. #직독직해 #medium #ios #swiftui #modular #achitecture #dependency #direction
콘텐츠를 더 읽고 싶다면?
원티드에 가입해 주세요.
로그인 후 모든 글을 볼 수 있습니다.
로그인 후 모든 글을 볼 수 있습니다.
・댓글 1