Внедрение зависимостей приводит к увеличению числа фабрик?

Я всегда чувствовал себя некомфортно, имея дело с классами, которым нужно было создавать экземпляры множества объектов, так как я использовал принципы внедрения зависимостей.

Например, скажем, у меня есть класс, который должен вызывать много разных вид событий. Каждое событие имеет свой тип, поэтому я бы хотел иметь разные фабрики для каждого типа события. Если у меня будет 10 событий, мне понадобится 10 заводов. Это не кажется приятным. Я мог бы также иметь единую фабрику для всех видов событий, но это тоже не кажется слишком правильным.

(для тех, кто занимается C #, я не говорю здесь о событиях .NET. Это было просто пример, чтобы перейти к делу, просто представьте их как обычные классы!)

Это был просто пример. У меня нет проблем с фабрикой здесь или там, но в некоторых типах проектов, где нужно создавать множество объектов во время выполнения, мне кажется, что я должен создать фабрику почти для каждого определяемого мной класса!

Как вы справляетесь с этой ситуацией? Я что-то упускаю?

Я видел, как люди просто передавали ссылку на контейнер IoC, который они используют, но мне это не показалось хорошим. ИМО, модель предметной области не должна даже знать, что используется контейнер IoC!

Спасибо

7
задан devoured elysium 24 May 2011 в 12:04
поделиться