일반적으로 생성자 삽입을 사용하고 컨테이너를 클래스에 삽입하는 것을 피하기 위해 종속성 삽입 프레임 워크를 사용합니다. 그러나 메시지 프로세서의 여러 인스턴스 (처리 스레드 당 하나씩)를 만들어야하므로 생성자 주입을 사용하여 해당 프로세서를 인스턴스화 할 수 없습니다.유니티 프레임 워크를 사용하여 클래스의 여러 인스턴스를 인스턴스화하는 최적의 디자인 패턴
물론 컨테이너를 주입하고이를 사용하여 프로세서를 해결할 수 있지만 많은 사람들이 안티 패턴이라고합니다. 나는 대안으로 공장을 만들고, 공장을 해결하고, 그것을 사용하여 프로세서를 만들 수있다. 그러나 타입을 올바르게 생성하기 위해 매개 변수가 필요하지 않더라도 주입하고자하는 각 유형에 대해 별도의 팩토리를 가져야하는 것은 많은 오버 헤드처럼 보입니다. 그래서 대신 컨테이너를 삽입하는 경향이 있습니다. .. 다른 사람들이이 시나리오를 다루는 가장 좋은 방법에 대한 생각을 갖고 있습니까?
많은 도움을 주셔서 감사합니다.
'Func'를 삽입하려고 했습니까? Unity는'T'가 등록되면'Func '을 어떻게 삽입하는지 알고 있습니다. 각 스레드마다 메시지 프로세서를 만드는 방법을 보여주는 코드를 제공 할 수 있습니까? –
감사합니다. 이것은 나를 위해 일하고 있는데, 사용자 정의 팩토리 클래스를 선언 할 필요없이 IMessageProcessor를 생성하는 팩토리를 생성합니다! 불행히도, 이것이 의견으로 입력 되었기 때문에 나는 그것을 해결책으로 표시 할 수 있다고 생각하지 않지만, 이것이 나의 문제를 해결했습니다. – user756366