일반적인 모듈화 패턴 | Android 개발자 | Android Developers
프로젝트 개요 | Android 개발자 | Android Developers
클린 아키텍처 기반 모듈화를 알아보자.
<aside> 💡 domain, data 모듈은 화면이 없기 때문에 Java or Kotlin Library로 선택하고, presentation 모듈은 Phone & Tablet으로 모듈은 생성하자.
</aside>
모듈 생성은 다양한 기능(Android 앱 모듈, 기능 모듈, 라이브러리 모듈)들이 있지만, 해당 포스팅에선 라이브러리 모듈만 다룬다.
위 절차에서 모듈을 추가했다면 다른 모듈에서 추가한 모듈을 사용할 수 있다. → 해당 모듈의 의존성 추가
일반적으로 안드로이드는 Gradle에서 의존성을 관리한다. 따라서 추가한 모듈을 다른 모듈에서 사용하려면 해당 모듈의 build.gradle
파일에 의존성을 추가하자.
dependencies {
implementation project(':data')
implementation project(':domain')
}
<aside> 💡 app 모듈에서 → presentation 모듈로 변경하려면 Activity로 앱을 시작하는경우 사용할 경우 app 모듈 gradle에 presentation 모듈의 의존성을 추가하고, presentation manifest에 <intent-filter>를 설정하자.
</aside>