Логотип ConstructiCat
CodeBust.
Навигация по разделу ▾

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

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

##Признаки и симптомы

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

class User { String phone; }
class UserForm { String phone; }
class UserDto { String phone; }
class UserRow { String phone; } // одно новое поле — изменения в четырёх классах

##Причины проблемы

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

##Лечение

##Результат

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

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

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