Каковы категории цикломатической сложности? Например:
1-5: легко обслуживать
6-10: сложно
11-15: очень сложно
20+: приближается невозможно
В течение многих лет я исходил из предположения, что 10 был пределом. И все, что за этим плохо. Я анализирую решение и пытаюсь определить качество кода. Конечно, цикломатическая сложность - не единственное измерение, но оно может помочь. Существуют методы с цикломатической сложностью 200+. Я знаю, что это ужасно, но мне любопытно узнать о нижних диапазонах, как в моем примере выше.
Я нашел это :
Вышеупомянутые эталонные значения Карнеги-Меллона определяют четыре грубых диапазона значений цикломатической сложности:
- методы от 1 до 10 считаются простыми и понятными
- значения между 10 и 20 указывают на более сложный код, который все еще может быть понятным; однако тестирование становится более трудным из-за большего количества возможных ветвей, которые может занять код
- значения от 20 и выше типичны для кода с очень большим числом потенциальных путей выполнения и могут быть полностью изучены и протестированы только с большими трудностями и усилиями
- методы, идущие даже выше, например> 50, безусловно, не поддерживаются
При запуске метрик кода для решения результаты отображаются зелеными для всего, что ниже 25. Я не согласен с этим, но я надеялся получить другие данные.
Существует ли общепринятый список диапазонов для цикломатической сложности?