Abstrakcyjny wzór fabryki na szczycie IoC?

Zdecydowałem się zastosować zasady IoC w większym projekcie. Chciałbym jednak uzyskać coś prostego, co mnie męczy od dłuższego czasu. Wniosek, który wymyśliłem, jest taki, że kontener IoC jest wzorem architektonicznym, a nie wzorcem projektowym. Innymi słowy, żadna klasa nie powinna być świadoma swojej obecności, a sam kontener powinien być używany w warstwie aplikacji do łączenia wszystkich komponentów. Zasadniczo staje się opcją, oprócz dobrze zaprojektowanego modelu obiektowego. Skoro tak, to w jaki sposób można uzyskać dostęp do rozstrzygniętych typów bez zraszania kontenerów IoC w dowolnym miejscu (niezależnie od tego, czy są one abstrakcyjne, czy nie)? Jedyną opcją, jaką tu widzę, jest wykorzystanie abstrakcyjnych fabryk, które używają kontenera IoC do rozwiązywania konkretnych typów. Powinno to być łatwe do wymiany na zestaw standardowych fabryk. Czy to dobre podejście? Czy ktokolwiek użył go tutaj i jak dobrze to działa dla ciebie? Czy jest coś jeszcze dostępnego?

Dzięki!

questionAnswers(2)

yourAnswerToTheQuestion