Dev/닷넷 C#
-
[WPF] DI(의존성주입), IoC(제어의역전) for NinjectDev/닷넷 C# 2019. 7. 13. 15:34
WPF Ioc, DI 라이브러리 NInject에 대해서 알아보자. DI, IoC ...더보기 IoC(Inversion of Control)란, 개발자가 직접 생성하고 컨트롤 해야하는 객체를 프레임워크단에서 직접 컨트롤 해주는 패턴이다. 객체를 new()로 직접 생성하거나, 클래스 내부에서 싱글톤으로 생성하여 개발자가 'Class.Instance.GetDatabases();' 이런식으로 사용하던 것을 프레임워크가 직접 컨트롤 해준다는 의미이다. 그렇다면 직접 생성해도 되고 내부적으로 싱글톤을 사용해도 될텐데, 왜 프레임워크 단에서 이런 기술을 지원하는 것 일까? 프로젝트의 규모가 커지면 그 만큼 관리해야할 서비스단도 많이 질것이고, WPF나 모바일 환경에서의 경우 앱의 상태관리에 필요한 싱글톤객체가 우후죽..