Глянь мой новый курс по Git! Привет! Глянь мой новый курс по Git! Привет! Глянь мой новый курс по Git на GitByBit.com! Привет! Хочешь круто подтянуть Git? Глянь мой новый курс на GitByBit.com!

Стрельба дробью

Также известен как: Shotgun Surgery

«Стрельба дробью» похожа на Расходящиеся модификации, но является противоположностью этого запаха. «Расходящиеся модификации» имеют место, когда есть один класс, в котором производится много различных изменений, а «Стрельба дробью» — это одно изменение, затрагивающее много классов.

Симптомы и признаки

При выполнении любых модификаций приходится вносить множество мелких изменений в большое число классов.

Причины появления

Одна обязанность была разделена среди множества классов. Это может случиться после фанатичного исправления Расходящихся модификаций.

Лечение

  • Вынести все изменения в один класс позволят перемещение метода и перемещение поля. Если для выполнения этого действия нет подходящего класса, то следует предварительно создать новый.

  • Если после вынесения кода в один класс в оригинальных классах мало что осталось, следует попытаться от них избавиться, воспользовавшись встраиванием класса.

Выигрыш

  • Улучшает организацию кода.

  • Уменьшает дублирование кода.

  • Упрощает поддержку.