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

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

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

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

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

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

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

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

Лечение

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

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

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

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

Выигрыш

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

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

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

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