[java] Jigsaw를 활용한 안드로이드 애플리케이션 개발 방법

안드로이드 애플리케이션을 개발할 때 모듈화와 코드 재사용성은 매우 중요합니다. 이를 위해 자바의 Jigsaw 기능을 활용하여 안드로이드 애플리케이션을 보다 효과적으로 개발할 수 있습니다.

Jigsaw는 자바 9 버전부터 도입된 기능으로, 모듈화된 자바 애플리케이션을 구성할 수 있도록 도와줍니다. 이를 활용하면 안드로이드 애플리케이션을 여러 모듈로 나누고 각 모듈을 독립적으로 개발할 수 있습니다.

1. 모듈화된 안드로이드 프로젝트 생성

안드로이드 스튜디오에서 새로운 안드로이드 프로젝트를 생성합니다. 프로젝트 생성 화면에서 ‘Include Kotlin support’‘Use androidx.* artifacts’ 옵션을 선택합니다. 이렇게 하면 Kotlin 언어와 AndroidX 라이브러리를 사용할 수 있습니다.

2. 기능별 모듈 생성

모듈을 생성하여 기능별로 구분한 뒤, 해당 모듈에 관련된 코드와 리소스를 넣습니다. 예를 들어, ‘로그인’ 기능을 담당하는 모듈을 생성한다고 가정하겠습니다. 다음 명령어를 터미널 또는 커맨드 프롬프트에서 실행하여 모듈을 생성합니다.

$ mkdir login-module
$ cd login-module
$ gradle init --type java-library

위 명령어는 ‘login-module’이라는 이름의 모듈 디렉토리를 생성하고, 그 안에 자바 라이브러리용 Gradle 프로젝트를 초기화합니다.

3. 모듈 간 의존성 관리

의존성 관리를 위해 프로젝트의 루트 디렉토리에 있는 settings.gradle 파일에 다음과 같이 모듈을 추가합니다.

include ':login-module', ':app'

그리고 모듈 간의 의존성을 설정하기 위해 app/build.gradle 파일에 다음과 같이 의존성을 추가합니다.

dependencies {
    implementation project(':login-module')
}

위 설정은 애플리케이션 모듈인 applogin-module 모듈에 의존한다는 것을 의미합니다.

4. 모듈의 코드와 리소스 사용

이제 각 모듈에서 코드와 리소스를 개발할 수 있습니다. 예를 들어, ‘login-module’의 LoginActivity 클래스에서 로그인 관련 로직을 작성하고, 해당 모듈의 리소스를 활용하여 화면을 구성할 수 있습니다.

public class LoginActivity extends AppCompatActivity {
    // 로그인 관련 로직 작성
}

5. 모듈의 배포와 테스트

각 모듈은 독립적으로 배포하고 테스트할 수 있습니다. Gradle을 통해 각 모듈을 빌드하고 배포할 수 있으며, 안드로이드 스튜디오에서는 각 모듈을 개별적으로 테스트할 수 있습니다.

결론

Jigsaw를 활용하여 안드로이드 애플리케이션을 모듈화하고 개발하는 방법에 대해 알아보았습니다. 모듈화와 코드 재사용성을 높이면서 안드로이드 애플리케이션 개발을 더욱 효과적으로 진행할 수 있습니다. Jigsaw를 활용하여 안드로이드 애플리케이션을 개발해보세요.

참고 자료