라벨이 Compose인 게시물 표시

Android Koin 적용하기: Compose와 ViewModel 의존성 주입

이 글은 2022년에 작성한 내용을 2026년 기준으로 전면 개정한 글입니다. 기존 URL은 유지하면서 스크린샷 위주의 Koin 3.2 설정 노트를 최신 Android·Compose 환경에서 실행할 수 있는 의존성 주입 가이드로 다시 작성했습니다. 이미지 준비 중: 이 글은 2026-08-06 공개 전 Koin 의존성 그래프 다이어그램 1장과 Compose 주입 흐름 다이어그램 1장을 GCS에 업로드하여 추가할 예정입니다. Android Koin 적용하기: Compose와 ViewModel 의존성 주입 안드로이드 앱이 커지면 화면마다 필요한 객체를 직접 만들지 않고 외부에서 주입받는 구조가 편해집니다. Koin은 Kotlin 전용 의존성 주입 라이브러리로, 복잡한 애너테이션 처리 없이 DSL로 모듈을 선언하고 런타임에 객체를 제공합니다. 이 글에서는 최신 Android에서 Koin을 설정하고 ViewModel, Jetpack Compose, 테스트까지 한 흐름으로 적용합니다. 2026년 현재 Koin 4.x는 Compose 멀티플랫폼 지원을 강화했고, 안드로이드 프로젝트는 version catalog를 기본 빌드 설정으로 사용합니다. 2022년 원문이 다루던 Gradle 파일 형식 변경 문제는 더 이상 별개의 이슈가 아니며, 최신 권장 구조에서 처음부터 설정하는 방법을 다룹니다. 핵심 질문 이 글의 답 최신 Android에서 Koin은 어떻게 추가하나? version catalog에 Koin BOM과 아티팩트를 선언 ViewModel은 어떻게 주입하나? koinViewModel() 로 Compose에서, by viewModel() 로 Activity/Fragment에서 Compose 화면에 의존성을 어떻게 넣나? koinInject() 또는 ViewModel을 통해 노출 Koin Annotations는 언제 쓰나? 모듈 선언을 줄이고 컴파일 타임 검증이 필요할 때 테스트에서는 어떻게 다루나? Koi...