koin
-
[Android] Koin Test로 테스트 코드 작성하기Mobile Engineering 2020. 5. 12. 23:26
이 글은 이미 Koin 세팅을 하셨다는 전제하에 기술하였습니다. 아직 Koin을 세팅하지 않았다면 이전 세팅 방법에 대해서 포스팅을 참고하시기 바랍니다. https://simplifyprocess.tistory.com/5 이번에는 Koin을 사용해서 테스트 코드를 작성할때 사용하는 KoinTest에 대해서 기술하고자 합니다. Gradle 세팅 일단 어느 라이브러리를 사용하던지 gradle 세팅을 안할 수는 없겠죠. 이부분도 아주 간단합니다. 먼저 다음과 같이 MavenRepository에 jCenter를 추가합니다. // build.gradle at Project Level buildscript { repositories { jcenter() } } 그리고 Module Gradle에 KoinTest를 추..
-
[Android] Koin vs Dagger2Mobile Engineering 2020. 4. 21. 23:20
이전 아티클을 보시면 아래의 내용을 이해하는데 도움이 됩니다. Koin으로 의존성 주입하기 [ https://simplifyprocess.tistory.com/5 ] 오늘은 민감한 주제입니다. Koin vs Dagger2. Dagger는 안드로이드에서 가장 많이 사용되고 있는 DI Framework이고, 구글에서 직접 유지보수하는 오픈소스입니다. 하지만 두가지를 경험해본 저는 Koin에 손을 들어주고 싶습니다. 왜냐하면 서로 바라보는 지향점이 아주 다르고 Layering, 사용 편의성으로 따져봤을때 Koin이 더욱 우세하다고 생각합니다. Koin과 Dagger의 구동방식 이해를 돕기 위해 아래의 그림을 봅시다. 위 그럼처럼 Koin은 Module에서 선언한 DI를 Cache에 저장하고 있습니다. 그렇기 ..
-
[Android] Koin으로 의존성 주입하기Mobile Engineering 2020. 4. 19. 15:19
요즘 안드로이드 프로젝트를 수행하면서 의존성 주입(DI - Dependency Injection)은 필수라 할 수 있습니다. 그래서 코틀린 환경에서 떠오르고 있는 DI Framework인 Koin에 대해서 이야기하고자 합니다. 1. Koin 세팅 최상단의 Project Gradle(ROOT/build.gradle)에 아래와 같이 설정을 추가합니다. buildscript { dependencies { classpath "org.koin:koin-gradle-plugin:$koin_version" } } 그리고 Koin을 사용하는 Module의 Gradle(app/build.gradle)에 아래와 같이 설정을 추가합니다. apply plugin: 'koin' android { packagingOptions ..