컴파일 타임에 IOC를 수행하는 프로젝트를 시작한 사람이 있습니까 (Roslyn 또는 Linq MethodInfo emit 사용)?
IOC 컨테이너에 대한 나의 경험은 지금까지 몇 가지 작은 문제를 제외하고 훌륭했습니다.
- 많은 분해능 로직이 여기에서 발생하므로 많은 IOC 컨테이너가 느리게 시작됩니다.
- 컴파일이 더 이상 생성자를 호출 할 수 없기 때문에 해결이 가능한지 종종 확인하기가 어렵습니다.
- IOC 컨테이너는 종종 런타임에 작은 오버 헤드를 추가합니다 (일부는 작지 않은 경우가 많음).
이상적인 해결책은 IOC 대신 Factory 클래스를 추가하는 빌드 단계에 컴파일 단계를 추가하는 것 같습니다.
아무도 전에 이것을 한 적이 있습니까? 그렇지 않다면 왜 안됩니까?