본문 바로가기
반응형

Dependency Injection4

[Android] Dependency Injection (a.k.a DI) - 4. 기반코드를 Hilt로 리팩토링 해보자! 자, 이번 포스팅에선 Hilt를 사용해보자. developer.android.com/training/dependency-injection/hilt-android?hl=ko Hilt를 사용한 종속 항목 삽입 | Android 개발자 | Android Developers Hilt는 프로젝트에서 수동 종속 항목 삽입을 실행하는 상용구를 줄이는 Android용 종속 항목 삽입 라이브러리입니다. 수동 종속 항목 삽입을 실행하려면 모든 클래스와 종속 항목을 수동으로 구성 developer.android.com Hilt에 대해선 위 문서를 참고 하는것을 추천한다. 현재까지 나온 버전은 alpha 이지만, 드로이드나이츠를 보니 많은 개발자분들이 벌써 Dagger, Koin에서 Hilt로 갈아타고 있는 것 같았다. 나 .. 2020. 10. 25.
[Android] Dependency Injection (a.k.a DI) - 3. 기반코드를 Koin으로 리팩토링 해보자! 자, 이전 포스팅에서 작성한 Koin으로 리팩토링 해보자. github.com/InsertKoinIO/koin InsertKoinIO/koin Koin - a pragmatic lightweight dependency injection framework for Kotlin - InsertKoinIO/koin github.com Koin에 대해선 위 사이트를 방문해보는 것을 추천한다. 간략하게 말하면, Kotlin으로만 작성된 DI Framework이다. Dagger에 비해 상대적으로 쉽게 작성이 가능하다. 단점으로는 런타임, 실제 앱이 실행되는 동안에 DI에 문제가 발생했는지 안했는지 알 수 있다. (Dagger는 컴파일 타임에 알 수 있다.) 자, 이제 Koin을 사용해보자. - Dependency 추.. 2020. 10. 24.
[Android] Dependency Injection (a.k.a DI) - 2. MVVM으로 기반 코드 작성 자, 우선 기반 코드를 작성하도록 하겠다. MVVM 아키텍처를 활용할 것이며, 구글의 아래 이미지를 참고하자. https://developer.android.com/jetpack/docs/guide?hl=ko 앱 아키텍처 가이드 | Android 개발자 | Android Developers 이 가이드에는 고품질의 강력한 앱을 빌드하기 위한 권장사항 및 권장 아키텍처가 포함되어 있습니다. 이 페이지는 Android 프레임워크 기본을 잘 아는 사용자를 대상으로 합니다. Android 앱을 처 developer.android.com 더 자세한 내용은 위 문서를 보고, 아래부터는 코드를 통해 DI를 확인 할 것이다. - 기반 코드 패키지 구조 패키지 구조는 위와 같다. 여기서 fake는 실제로 데이터를 받아오기.. 2020. 10. 24.
[Android] Dependency Injection (a.k.a DI) - 1. 뭔데? 왜 하는데? Dagger? Koin? Hilt? 최근 개발자 채용공고를 보면 자격요건 혹은 우대사항에 DI가 심심치 않게 나타난다. 이말은 곧 DI라는 것이 개발에 있어 꽤 중요한 부분으로 인식되고 있다는 증거다. 나 또한 회사에서의 개발, 사이드 프로젝트에서 DI를 활용하고 있다. 이번 포스팅은 DI가 무엇이고 왜 쓰는지를 예시와 함께 알아 볼 것이다. - DI가 뭐야? DI는 "Dependency Injecton" 의 줄임말이며 "의존성 주입" 이라는 의미로 해석이 된다. 의존성이란 A라는 객체(클래스)가 B라는 객체(클래스)를 사용한다는 의미로 이해하자. 이해를 돕기 위해 아래의 예시를 보자. class SomeDataRepository { private val source: SomeDataSource = SomeDataSource() } cla.. 2020. 10. 24.