Как интерпретировать метрики кода (рассчитанные SourceMonitor)

после прочтения ответов на вопрос "Расчет Показателей Код" Я установил инструмент SourceMonitor и рассчитали некоторые показатели.

но я понятия не имею, как интерпретировать их.

Что такое "хорошее" значение метрики

  • "Процент Заявлений Филиала"
  • "методы на класс"
  • "средние утверждения по методу"
  • " максимальный метод или Функция Сложность"

Я не нашел никаких намеков в документации, может кто-нибудь мне помочь?

2 ответов


SourceMonitor является удивительным инструментом.

"методы для каждого класса" полезно для тех, кто хочет, чтобы их классы следовали хорошим принципам OO (слишком много методов указывает, что класс может принимать больше, чем следует).

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

Сложность полезна для определения того, насколько неприятен код. Действительно, я использую эту информацию больше, чем что-либо еще. Это информация о том, насколько сложна самая неприятная функция в модуле (по крайней мере, в соответствии с цикломатической сложностью). Если вы дважды щелкните по модулю / файлу, вы можете узнать, какой конкретный метод настолько плох.

как общее эмпирическое правило, цикломатическая сложность 10 или меньше-это то, где вы хотите быть. CC от 11 до 20 примерно так же высоко, как вы хотите получить в большинстве случаев: как только вы получите выше 20, вы с большей вероятностью столкнетесь с проблемами поиска и исправления дефектов, и как только вы получите выше 50, вы обычно смотрите на метод, который должен быть рефакторирован сейчас.

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