Autumn SALE

Группы данных

Также известен как: Data Clumps

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

Иногда в разных частях кода встречаются одинаковые группы переменных (например, параметры подключения к базе данных). Такие группы следует превращать в самостоятельные классы.

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

Появление групп данных является следствием плохой структурированности программы или программирования методом копирования-вставки.

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

Лечение

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

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

  • Если некоторые из этих данных передаются в другие методы, подумайте о возможности передачи в метод всего объекта данных вместо отдельных полей (в этом поможет передача всего объекта).

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

Выигрыш

  • Улучшает понимание и организацию кода. Операции над определёнными данными теперь собраны в одном месте, и их не надо искать по всему коду.

  • Уменьшает размер кода.

Не стоит трогать, если...

  • Передача всего объекта в параметрах метода вместо передачи его значений (элементарных типов) может создать нежелательную зависимость между двумя классами.