저번글에서 DI (Dependency Injection)에 대해 알아보았는데 이번엔 요새 많이 쓰이고 있는 Hilt에 대해 소개해보도록 하겠습니다.
DI가 무엇인지 모른다면 제 블로그 전 게시글을 확인하고 오면 이해하기 더 편할 거 같습니다!
이제 본론으로 넘어가 Hilt가 무엇인지 알아보도록 하겠습니다.
Hilt 란?
Hilt는 Dagger를 기반으로 Dagger를 좀 더 쉽게 사용할 수 있게 도와주는 DI 라이브러리입니다.
그럼 Dagger를 쓰면 안되는것일까? Dagger에 무슨 문제가 있길래 Hilt로 바뀐것일까?를 말씀 드리기 전에 간단히 Dagger 가 무엇인지 설명드리겠습니다.
Dagger란?
Dagger는 자바와 안드로이드에서 의존성 주입을 구현하기 위해 사용하는 프레임 워크입니다.
지금은 Dagger를 사용하지 않는 추세이고 Jetpack 에서는 Hilt 를 추천하고 있습니다.
왜 Dagger를 사용하지 않고 Hilt 를 사용할까?
위에 말씀 드렸다시피 Dagger는 러닝커브가 높다는 단점이 존재합니다. Hilt에 비해 개발자가 설정해줘야 하는것이 많고 이로 인해 개발자가 작성해야하는 코드가 더 많았습니다. 또한 Hilt는 생명주기를 인식하는 특징이 있습니다. 당장에 DI 를 사용해야 한다면 더 빠르게 개발할 수 있는 Hilt 를 많이 사용하겠죠??
특징
- Android에서 DI를 위한 Jetpack 권장 라이브러리입니다.
- Android 클래스에 의존성 주입을 지원하고 수명 주기를 자동으로 관리해줍니다.
장점
- Dagger 보다 쉽게 사용 가능합니다. -> 러닝 커브 낮음
- 컴파일 타임에 DI 코드들을 생성해 런타임 성능이 좋습니다.
단점
- 컴파일 과정에서 오류를 검출하기 때문에 빌드가 오래 걸립니다.
'Android' 카테고리의 다른 글
안드로이드 Compose란 + 예제 (0) | 2024.03.05 |
---|---|
안드로이드 DataBinding 사용 예제 (0) | 2024.03.04 |
안드로이드 ROOM 사용법 + 예제 (0) | 2024.03.03 |
WebRTC 란? (2) | 2023.08.08 |
#1 안드로이드 4대 컴포넌트 (0) | 2023.04.29 |
댓글