Я реорганизую класс и добавляю к нему новую зависимость. В настоящее время класс использует свои существующие зависимости в конструкторе. Поэтому для согласованности я добавляю параметр в конструктор.
Конечно, есть несколько подклассов и даже больше для модульных тестов, поэтому теперь я играю в игру, изменяя все конструкторы, чтобы они соответствовали друг другу, и это требует возрастов.
Это заставляет меня думать, что использование свойств с установщиками - лучший способ получить зависимости. Я не думаю, что внедренные зависимости должны быть частью интерфейса для создания экземпляра класса. Вы добавляете зависимость, и теперь все ваши пользователи (подклассы и все, кто создает вас напрямую) внезапно узнают об этом. Это похоже на разрыв инкапсуляции.
Это не похоже на шаблон с существующим здесь кодом, поэтому я хочу выяснить, каков общий консенсус, плюсы и минусы конструкторов по сравнению со свойствами. Лучше ли использовать установщики свойств?