3

Я провел анализ кода для своего проекта с помощью VS2010.Cyclomatic Complexity vs project health

Вот мои результаты,

  1. ремонтопригодность Index - 75%
  2. цикломатическая Сложность - 213
  3. Глубина наследования - 7
  4. Класс Coupling - 98
  5. строк кода - 747

может любое тело, пожалуйста, объясните о моих про здоровье. это хорошо, плохо или средние? Как мы можем интерпретировать эти результаты?

ответ

2

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

Когда функция была выпущена с VS2008, я использовал ее для анализа записей для запутанной задачи C#, которую я запускал в то время. Результаты были немного удивительными. Все записи были оценены как хороший, поддерживаемый код. Очевидно, что код был запутан и поэтому трудно читать, понимать и поддерживать.

Чтобы использовать анализ, я бы сделал следующее. Обратите внимание на цифры, а затем просматривайте код (или образцы кода), чтобы получить представление о качестве/ремонтопригодности. После этого вы можете регулярно запускать анализ и использовать дельта, чтобы указать, где проблемы могут начинаться с root.

+0

Это правда. Я смотрю одну на одну функцию. Поддержание работоспособности действительно помогает мне проверять функции в терминах комментариев и способа их написания. цикломатическая сложность рассказала мне о петлях и условных утверждениях внутри этой функции. Спасибо! – Dinesh

1

Я не думаю, что вы можете многое сказать о проекте, основанном на этих цифрах прямо сейчас. Различные проекты имеют разные потребности, простое приложение для ввода данных будет иметь различную циклическую сложность, чем библиотека 3d-рендеринга. Сравнение этих чисел между проектами похоже на сравнение яблок и апельсинов.

Существует два способа использования этих чисел.

  • Отслеживать их по времени. Если вы видите муфта, вы можете захотеть начать задавать себе несколько вопросов.
  • Сравните различные части вашего приложения . Если некоторые части более подвержены ошибкам, вы можете проверить, что вызывает это.

Просто убедитесь, что вы используете эти показатели для диагностики актуальных проблем. Не начинайте изобретать проблемы, которых у вас нет, потому что «глубина наследования - это путь вверх»

+0

есть. это больше о качестве кода. Способ написания комментариев, Условные утверждения и циклы. Спасибо !!! – Dinesh

0

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