Подтвердить что ты не робот

Что указывает данные индекса упаковки пакетов в Sonar?

У меня есть следующие данные по одной из 7 осей (см. второе изображение) после запуска анализа Sonar моего проекта, Какую информацию можно декодировать из этих данных? Также какая из осей на приведенной ниже диаграмме относится к этим данным?

enter image description here

enter image description here

4b9b3361

Ответ 1

Это означает, что существуют циклические зависимости между пакетами и файлами.

В идеале вы хотите, чтобы зависимости проходили в одном направлении - это позволяет вам вносить изменения и прогнозировать их влияние. Например, если ваш пакет "пользовательский интерфейс" зависит от пакета "бизнес-логика", но ничего не зависит от пакета "пользовательский интерфейс", вы должны иметь возможность вносить изменения в пользовательский интерфейс, не нарушая ничего вне этого пакета. Циклическая зависимость означает (например) пакет пользовательского интерфейса, зависящий от пакета бизнес-логики, но пакет бизнес-логики также зависит от пакета пользовательского интерфейса. Теперь, если вы измените пользовательский интерфейс, вы можете сломать уровень бизнес-логики, что, в свою очередь, может повлиять на что-то совершенно не связанное в пользовательском интерфейсе.

Идея программного обеспечения "расслоения" и наличия зависимостей потока в одном направлении между слоями предназначена для устранения этой путаницы.

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

Tangling обычно является проблемой архитектуры/дизайна.