Цикломатическая сложность - это мера, основанная на графической структуре кода.В частности, он основан на количестве возможных путей через код;см здесь для более подробной информации.Хотя существует связь между CC и тем, что типичный программист считает сложностью кода, это не одно и то же.Например:
CC не учитывает семантику кода;например, что делает тот или иной метод, который вызывается, или математические свойства алгоритма.
CC не учитывает схемы проектирования и кодирования.Таким образом, то, что CC говорит о том, что оно сложное, вполне может быть простым для того, кто понимает используемый шаблон.
Вы можете сказать, что взаимосвязь между CC и сложностью реального кода подобна взаимосвязи междуIQ и реальный интеллект.
Таким образом, Cyclomatic Complexity следует рассматривать как индикатор того, где находятся сложные части вашего кода ... не как истинный показатель сложности или качества кода.В самом деле, очень сложный код не обязательно должен иметь плохое качество.Зачастую сложность присуща, и попытка избавиться от нее только усугубляет ситуацию.
В этом конкретном примере высокая мера CC не соответствует тому, что могло бы вызвать у типичного программиста какие-либо трудности,Лучший ответ (IMO) - оставить метод в покое.Назовите это ложным срабатыванием.