2010-02-08 4 views
1

저는 여러 가지 오픈 소스 프로젝트와 관련되어있어 애플리케이션 개발 프레임 워크를 제공합니다. 내가 가진 질문은 서로 통합하기 위해 어떤 메커니즘을 제공해야 하는가?DI/IoC 컨테이너로 열어두기

개념적 차원에서 대답은 명확합니다. - DI/IoC. "유일한"문제는 어느 것을 결정하는 것입니다. 여러 설치에서 우리는 StructureMap을 사용했지만 구성 요소 중 하나만 원했고 NInject를 원했던 사용자가 나타났습니다.

질문을 한정하기 위해 다양한 DI/IoC 컨테이너를 사용하여 서로 (및 제 3 자) 통합 할 수 있도록 구성 요소를 작성하는 방법을 알려야합니다.

내가 생각할 수있는 최선의 방법은 모든 통합 코드를 별도의 프로젝트로 분리 한 다음 지원되는 IoC 컨테이너 당 프로젝트를 작성하는 것이었지만 이것은 의심스러운 IoC 제곱과 비슷하게 들린다.

멋진 아이디어가 있습니까? 아니면 그냥 너무 열심히 생각하고 있니?

P. 호기심에 찬 : NDjango; Bistro; Workflow Server

답변

2

재사용 가능한 구성 요소를 개발할 경우 DI-friendly way without ever referencing any particular DI Container에 구현할 수 있습니다.

DI 컨테이너가 필요한 실제 실행중인 응용 프로그램을 작성해야 할 때만 해당하지만 프레임 워크를 개발 중이므로 DI 중립성을 유지하는 것이 가장 좋습니다.

2

this very related question (거의 중복)을 참조하십시오.

여러 프로젝트를 독립적으로 유지하면서 통합하는 것에 대한 영감을 얻으려면 Castle Project을 참조하십시오.

관련 문제