Какие инструменты указывают пары высокосвязанных классов Java? - PullRequest
0 голосов
/ 12 августа 2011

Мне известно о нескольких инструментах, которые указывают, какие отдельные классы связаны со многими другими классами.Например, несколько инструментов реализуют связь между объектами (CBO), которая сообщает, какие классы связаны со многими другими классами.(Для класса CBO это количество других классов, с которыми он связан.) Меня не интересуют инструменты, которые реализуют такие метрики, как CBO.

Вместо этого я хотел бы знать какие пары классов тесно связаны между собой, например, существует много вызовов методов между классами A и B. Если вам известны какие-либо из таких инструментов, пожалуйста, ответьте.

Ответы [ 4 ]

4 голосов
/ 12 августа 2011

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

На уровне пакета Сонар предоставляет представление Матрица структуры зависимостей , чтобы помочь вам проанализировать связь между пакетами. Плагин Isotrol Metrics Analytics позволяет интегрировать метрики JDepend и ckjm в Sonar, что может помочь в анализе связи на уровне класса. Но ему все еще не хватает удобства «щелкни, чтобы развернуть», который обеспечивает Sonar в целом.

2 голосов
/ 12 августа 2011

Я обнаружил, что PMD - простой и эффективный инструмент для статического анализа, который также измеряет связь между классами Java.Смотри здесь

0 голосов
/ 06 мая 2013

Вы можете использовать CodePro .В нем много метрик и графиков зависимостей

0 голосов
/ 17 ноября 2011

Вы можете использовать CQL (как SQL) в JavaDepend , например, этот запрос

ВЫБРАТЬ ТОП 100 ТИПОВ ПОРЯДОК TypeRank DESC, TypeCa DESC

ПредоставляетНаиболее 100 используемых классов в вашем проекте.

...