Какие параметры используются для расчета сложности в SourceMonitor? - PullRequest
5 голосов
/ 07 июня 2010

Я недавно начал использовать SourceMonitor для проверки моего (и других) кода. Хотя я понимаю другие параметры, оцениваемые инструментом, я не знаю, как он вычисляет сложность кода. Как, например, какие параметры он считает для чтения в число сложности?

Ответы [ 2 ]

3 голосов
/ 10 июня 2010

нашел его в Справка -> Разделы справки -> Объяснение метрик языка -> C # -> Сложность метода Max -> (Сложность) Значение сложности.

Значение сложности исходного монитора http://tinypic.com/r/10yi0kp/6

2 голосов
/ 07 июня 2010

Трудно понять, что они не заявили об этом, но одна из самых распространенных мер - цикломатическая сложность - мера количества маршрутов через код. Простой процедурный метод сверху вниз имеет сложность 1, к которой добавляются все циклы / ответвления / защелки и т. Д. Идея состоит в том, что, если это становится слишком высоким, ваш метод делает слишком много и должен быть реорганизован в несколько меньших, более целевых методов.


Редактировать; отсюда :

Был добавлен парсер для C #. Большинство показателей аналогичны C ++ и Java. Основное отличие состоит в том, как определяется «самый большой» метод. Вместо того чтобы отождествлять метод с большинством операторов, для C # самый сложный метод находится для каждого файла. Измерение сложности аналогично Cyclomatic Complexity - подсчет возможных путей прохождения кода.

(выделение мое), так что, похоже, у них есть слегка модифицированный вариант обычного CC. Только они могут сказать вам, что они сделали иначе; p

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...