С моей профессиональной точки зрения DI фреймворки не нужны.
Они затрудняют распутывание кода,
понижают гибкость автоматического рефакторинга (в частности ReSharper-ом)
и это не перекрывается гибкостью подстановки mock-объектов
но обнаруживаю ярых адептов этого всего.
уже и в вакансиях суют такое требование
кто-то может популярно расписать преимущества либо природу явления популярности?
(часть плюсов знаю и гипотезы-то я имею, но мнение всё равно такое)