2.3 KiB
2.3 KiB
#рефакторинг #запахи_кода
Данные — как дети: они любят сбиваться в тесные группы. Часто можно видеть, как одни и те же три-четыре элемента данных встречаются во множестве мест: поля в паре классов, параметры в нескольких методах. Данные, встречающиеся совместно, имеет смысл превращать в отдельный класс
Признаки
- В разных частях кода встречаются одинаковые группы переменных (например, параметры подключения к базе данных). Такие группы следует превращать в самостоятельные классы.
Причины появления
- Следствие плохой структурированности программы или программирования методом копирования-вставки
Рефакторинги
- Извлечение класса (Extract Class)
- Введение объекта параметра (Introduce Parameter Object)
- Сохранение всего объекта (Preserve Whole Object)
Результат
- Улучшает понимание и организацию кода
- Операции над определёнными данными теперь собраны в одном месте, и их не надо искать по всему коду
- Уменьшает размер кода
Не стоит трогать, если...
- Передача всего объекта в параметрах метода вместо передачи его значений (элементарных типов) может создать нежелательную зависимость между двумя классами.


