Що таке хороша цикломатична складність?

1-10: Проста процедура, невеликий ризик. 11 – 20: Більш складний, помірний ризик. 21 – 50: складний, високий ризик. > 50: код, який не можна перевірити, дуже високий ризик.

На практиці це кількість «ifs» і «elses», яку має клас, метод, функція чи еквівалент. За словами Маккейба, максимально допустима цикломатична складність становить 10, але в Інтернеті кілька джерел вказують на максимальну між 5 і 6.

Управління ризиками

Цикломатична складністьОцінка ризику
1-10проста програма, без особливого ризику
11-20більш складний, помірний ризик
21-50складна програма з високим ризиком
50+нетестована програма (дуже високий ризик)

29 вересня 2021 р

Цикломатична складність коду є кількісним показником складності програми. Цей показник вимірює лінійно незалежні шляхи через вихідний код програми. Простіше кажучи, він кількісно визначає кількість точок прийняття рішень у коді. Висока циклометрична складність може збільшити ризик помилок у коді.

Наскільки цикломатична складність надто висока? Незважаючи на те, що немає чіткого порогу для визначення того, наскільки високо для цикломатичної складності, зазвичай рекомендується тримати його якомога нижчим. Загальноприйнятим принципом є прагнення до значення 10 або менше.

1 – 10: Проста процедура, мінімальний ризик. 11-20: Більш складний, помірний ризик. 21 – 50: складний, високий ризик. > 50: код, який не можна перевірити, дуже високий ризик.