Android Koin gradle

    [Koin] 1. Koin 이란? + 안드로이드 개발 환경 세팅

    Koin이란 Kotlin으로 DI를 공부하면서 가장 먼저 접하는 라이브러리는 Kotlin DSL로 만들어진 Koin이다. Kotlin DSL로 만들어졌다보니 Kotlin에 익숙한 개발자라면 사용하기 어렵지 않으며, Koin은 Dagger에 비해 구성요소가 복잡하지 않아서 Koin을 배우는 것은 러닝 커브가 낮다고 한다. 하지만 Koin은 리플렉션을 이용해 런타임에 오브젝트 그래프를 그려주다보니(=의존성 주입을 하다보니) 앱 성능이 저하된다는 단점이 있다. 따라서, 큰 규모의 프로젝트에서 Koin을 사용할 경우 Application이 시작될 때 의존성 그래프가 그려지다 보니 화면이 멈춘것처럼 될 수 있다. 따라서 큰 규모의 프로젝트에서는 컴파일 타임에 의존성 그래프를 그려주는 Dagger-Hilt을 이용해..