Developer/Android
[Android] Dependency Injection(DI)
hungry7013
2021. 1. 19. 20:40
안녕하세요. 오늘은 DI 에 대해서 이야기 해보겠습니다.
참고 링크
https://developer.android.com/training/dependency-injection
1. Dependency
Dependency 라는것은 의존성 이라고 할 수 있습니다.
예를 들면
Aclass 와 BClass 가 있습니다.
Aclass 의 객체에 Bclass의 객체에 대한 참조가 있는 경우
Aclass.java 안에 코드에서
Bclass bclass = New Bclass(); 가 있다면
클래스 A는 클래스 B에 의존합니다. (depends on)
클래스 B는 클래스 A에 종속성이 있습니다. (dependency of)
Aclass 를 빌드하면 subB... 라고 출력이 됩니다.
2. Injection
지금 위의 설명은 Aclass 내부에서 진행하였습니다.
하지만, 외부에서 객체를 생성하여 진행할 수 도 있습니다. (setter)
이것을 주입 이라고 합니다.
3. 장점
1. 의존성이 낮아져서 유지보수 GOOD
2. 코드 재사용 GOOD
3. 테스트 GOOD
ETC
외부 라이브러리
1. Dagger2
2. Koin