2
그래서이 새로운 프로젝트를 시작했고, 내가 읽었던 모든 새로운 디자인 원칙을 통합하려고했습니다. 느슨하게 결합, 테스트 및 일부 패턴을 따르십시오.벽에 부딪 혔기 때문에 IoC의 첫 번째 단계 '뒷 배경'을 설명하십시오
그래서 저는 너무 많은 공장/관리자를 클래스 생성자로 전달해야하는 문제에 직면하여 Dependancy injection으로 유도했습니다.
public class SomeClass
{
public SomeClass(IDBFactory factory, IOrderManager orderManager, ....)
}
그래서 내가 이해 한 것에서 ninject를 사용하면 특정 구현을 클래스에 바인딩합니다.
그래서 무엇이 뒤에서 진행되고 있습니까?
NInject는 SomeClass를 인스턴스화 할 때마다 구성 파일에 정의 된 구현을 바인딩합니다.
즉
내가 할 :
ISomeClass sc = NInject.Get<ISomeClass>();
및 Ninject에 할 것 :
new SomeClassImpl(pass in all the implementaitons in the constructor)
맞습니까? 이 방식으로 작동
참조 http://stackoverflow.com/questions/1082898/how-exactly-dependency-injection-is-implemented-internally-in-spring-net –