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

StackOverflow https://stackoverflow.com/questions/134266

  •  02-07-2019
  •  | 
  •  

Вопрос

После прочтения ответов на вопрос "Вычисление метрик кода" Я установил инструмент Источник - монитор и вычислил некоторые показатели.

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

Что является "хорошим" значением для этого показателя

  • "Процентные отчеты по филиалам"
  • "Методы для каждого класса"
  • "Средние утверждения для каждого Метода"
  • "Максимальная сложность метода или функции "

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

Это было полезно?

Решение

SourceMonitor - это потрясающий инструмент.

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

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

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

Другие советы

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top