작성
·
216
0
안녕하세요.
Dependancy Injection의 Singleton을 사용하는 것과 직접 Singleton객체를 만들어서 활용하는 이둘의 궁극적인 차이가 무엇인지 궁금하네요.
답변 1
1
그냥 Singleton을 사용할 경우
해당 코드에 직접 접근해서 (ex. LogManager.Instance )사용하기 때문에
어느 정도의 코드 종속성이 생깁니다.
반면 DI를 사용하면 꼭 '특정' 형식의 Manager를 사용할 필요 없이
특정 Interface을 DI에 등록할 수 있기 때문에
나중에 마음이 바뀌면 해당 Interface에
다른 클래스를 DI로 꽂아줄 수 있습니다.
(ex. FileLogManager라거나, ConsoleLogManager라거나...)
따라서 코드 종속성 차원에서 이점이 있습니다.