Ty metriky jsou jenom orientační. Jde napsat perfektně hodnocenou prasárnu a stejně tak to za jistých okolností dokáže v podstatě bezproblémový kód ohodnotit jako katastrofu.
Já to používám (v jiném programovacím jazyku, ale to je jedno), abych si třídy setřídil třídy od nejhorší po nejlepší, obvykle mi to ukáže, to co sám tuším a když mám chvíli čas, tak začínám s přepisem špatných souborů/tříd.
My to používáme, tedy spíš cyklomatickou složitost, protože ta je dobře pochopitelná (u MI většinou není jasné, co a jak zlepšit). Ukazuje se, že ten nejhorší kód, kód s nejmenším pokrytím unit testy a kód s největší chybovostí, má v naprosté většině případů kategorii cykl. složitosti od D výš. Samozřejmě je možné botu udělat i v jednodušších funkcích, ale tam je většinou pokrytí testy na takové úrovni, že se to zachytí (o tom, proč nemáme lepší pokrytí unit testy se raději pobavím někde u piva :-).
https://fabric8-analytics.github.io/dashboard/dashboard.html
Pro detekci prilis slozitych casti kodu bohate staci flake8 s pluginem mccabe, pouzivam max-complexity = 10.
Radon pouzivam spis jen pri prvotnim pruzkumu neznameho kodu - zmerim si velikost v SLOC a necham si ukazat nejslozitejsi casti. Pokud je to kod ktery aktivne udrzuju, staci mi spravne nastaveny flake8. Prilis slozite casti kodu se oznaci pomoci # noqa: C901 a do backlogu se prida ticket na refactoring dane casti.