Android Hilt

박영호·2023년 6월 21일

Hilt는 안드로이드 앱에서 의존성 주입(Dependency Injection)을 쉽게 구현할 수 있도록 도와주는 Jetpack 라이브러리입니다. Hilt는 Dagger를 기반으로 하며, Dagger의 기능을 간소화하고 보일러플레이트 코드를 최소화하여 의존성 주입을 간편하게 처리할 수 있도록 지원합니다.

Hilt의 핵심 개념은 다음과 같습니다:

  • 컴포넌트(Component): Hilt 컴포넌트는 의존성을 제공하고 주입받는 역할을 담당합니다. 앱의 각 구성 요소(애플리케이션, 액티비티, 프래그먼트 등)에 대해 컴포넌트를 정의하여 의존성 주입을 설정할 수 있습니다.

  • 모듈(Module): Hilt 모듈은 의존성 객체를 생성하고 제공하는 설정을 담당합니다. 모듈은 주입 가능한 객체를 생성하는 데 사용되며, 컴포넌트에 의해 사용될 수 있도록 구성되어야 합니다.

  • 어노테이션(Annotations): Hilt는 어노테이션을 사용하여 주입 대상 및 주입 방법을 지정합니다. @AndroidEntryPoint 어노테이션은 주입이 필요한 Android 컴포넌트에 추가되어 의존성 주입이 자동으로 처리되도록 합니다. @Inject 어노테이션은 주입을 받을 필드, 생성자 또는 메서드에 추가되어 해당 의존성이 주입되도록 지정합니다.

  • 간편한 설정: Hilt는 Dagger의 설정 과정을 단순화하여 개발자가 의존성 주입 설정을 쉽게 처리할 수 있도록 합니다. Hilt가 자동으로 Dagger 컴포넌트 및 모듈을 생성하고 설정해주므로, 복잡한 Dagger 설정에 대한 걱정을 덜 수 있습니다.

  • 라이프사이클 관리: Hilt는 안드로이드의 라이프사이클을 고려하여 의존성 객체의 생성과 해제를 관리합니다. 애플리케이션의 수명 주기에 따라 의존성 객체가 적절하게 생성되고 관리되므로, 메모리 누수나 라이프사이클 관련 문제를 줄일 수 있습니다.

profile
무언가에 호기심이 생기면 적극적이고 재밌게 그걸 해결해내고 싶어하는 프론트 엔드 개발자 입니다 .

0개의 댓글