Jakie są kategorie złożoności cyklicznej? Na przykład:
1-5: łatwe w utrzymaniu
6-10: trudne
11-15: bardzo trudne
20+: zbliża się niemożliwe
Od lat zakładam, że 10 to limit. A wszystko poza tym jest złe. Analizuję rozwiązanie i staram się ustalić jakość kodu. Z pewnością cykliczność nie jest jedynym pomiarem, ale może pomóc. Istnieją metody o cyklicznej złożoności 200+. Wiem, że to okropne, ale ciekawi mnie dolne zakresy, jak w moim przykładzie powyżej.
Znalazłem to :
Wyżej wymienione wartości odniesienia Carnegie Mellon określają cztery przybliżone zakresy wartości cykliczności złożoności:
- metody od 1 do 10 są uważane za proste i łatwe do zrozumienia
- wartości od 10 do 20 wskazują na bardziej złożony kod, który może być nadal zrozumiały; jednak testowanie staje się trudniejsze ze względu na większą liczbę możliwych gałęzi, które może przyjąć kod
- wartości 20 i wyższe są typowe dla kodu z bardzo dużą liczbą potencjalnych ścieżek wykonania i można je w pełni uchwycić i przetestować z dużym trudem i wysiłkiem
- metody idące jeszcze wyżej, np.> 50, są z pewnością nie do utrzymania
Podczas uruchamiania metryk kodu dla rozwiązania wyniki są zielone dla wszystkiego poniżej 25. Nie zgadzam się z tym, ale miałem nadzieję uzyskać inne dane wejściowe.
Czy istnieje ogólnie akceptowana lista zakresów złożoności cyklicznej?