provides1 [안드로이드] Hilt에서 @Binds와 @Provides의 차이 @Binds vs @Provides공통점@InstallIn로 정의된 모듈 내부에서 종속성 주입을 위해 사용된다.@Binds : 인터페이스와 인터페이스의 구현체를 연결하는데에 사용된다.@Binds의 메서드는 추상 메서드여야 한다.고로 abstract 키워드를 요구한다.@Binds 메서드는 동일한 인터페이스에 여러개의 인터페이스 구현체를 연결할 수 없다.주입될 타입은 인터페이스이다.@Provides : 종속성 객체를 생성, 제공하는 메서드를 정의할 때 사용된다. (@Binds 외의 경우)종속성을 제공하는데에 의미가 있으므로, 반환값이 존재해야 한다.복잡한 종속성을 제공하거나 외부 라이브러리를 제공하는데에 사용된다.주입될 타입은 인터페이스, 클래스 등 다양하다. 2024. 9. 10. 이전 1 다음