본문 바로가기
Android

Hilt 란?

by Taron 2024. 2. 6.

Hilt 사진

 

저번글에서 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

댓글