Architecture: Organizing modules — MAD Skills[번역]

DwEnn
2 min readMay 11, 2022

--

📝 NOTE : 이 글은 영상의 스크립트를 번역한 것이며 오역이 있을 수 있습니다. 😅

안녕하세요. 우리 모두 잘 짜여진 코드만큼 흥미로운 것은 없다는 것을 알고 있습니다. Architecture MAD Skills 의 하나로, 대형 프로젝트에서 모듈을 구성하는 방법에 대한 팁을 알려드리고자 합니다. 모듈화에는 개별 기능들의 책임 분리를 포함한 많은 이점이 있습니다. 병합 충돌 방지, 코드 재사용성 및 테스트 가능성 향상, 더 빠른 빌드 시간을 위한 종속성 그래프의 최적화와 같은 것들이죠.

Divide your project into

  1. Feature modules
  2. Library modules
  3. App modules

여러분의 프로젝트를 위 세 개의 레이어로 나누어 보세요.
Feature modules 은 개별적이고 독립적인 기능을 포함해야 하며 다른 피쳐 또는 Application 계층 모듈에 의존해서는 안됩니다. 하지만 다른 라이브러리에 의존할 수는 있습니다.
Library modules 은 여러 기능에 의해 재사용될 코드를 포함해야 합니다. 예를 들면, 공유되는 UI component 또는 로깅과 같은 기능입니다. 다른 라이브러리에 의존할 수 있지만 Feature 또는 App 계층 모듈은 의존할 수 없습니다.
마지막으로 App modules 는 모든 것을 함께 연결하고 기능과 라이브러리 모두에 의존할 수 있습니다.

Architecture에 대한 조언이었습니다. 여러분 모두가 어떻게 Architecture 를 구현할 수 있을지 기대하고 있습니다. 그리고 여러분에게 너무 많은 미래의 병합 충돌을 야기시키지 않았기를 바라고 있습니다. 😁

--

--