Я стараюсь избегать этого - есть несколько мест, где я считаю, что это полезный дизайн, но чаще всего я обнаруживаю, что это просто приводит к тому, что я допускаю ошибки, которые могут немного озадачивать, когда я работаю .
Потребность в вводимых объектах по умолчанию значительно снижается благодаря использованию контейнера внедрения зависимостей (я использую StructureMap) для управления всей этой проводкой - контейнер DI гарантирует, что вы всегда получаете конкретный экземпляр, который можете использовать.
Единственное место, где я все еще испытываю желание использовать предложенный вами конструктор, - это мои модульные тесты, но в последнее время я получаю гораздо большую выгоду от использования поддельных или поддельных объектов.
Есть места, где наличие зависимых объектов по умолчанию является правильным и полезным дизайном, но в целом я бы сказал, что вы просто вводите тесную связь, которая не добавляет большой ценности.