
Wpis użytkownika sebkek w Python
sebkekGwiazdor
52piorunówCzy twój kod jest zbyt skomplikowany?
Poniższy artykuł omawia dwie metryki złożoności kodu, które mają bezpośredni wpływ na naszą zdolność zrozumienia, co dany kod właściwie robi:
Złożoność cyklomatyczna* - określana jest liczbą rozgałęzień i punktów decyzyjnych w funkcji
Złożoność poznawcza* - określana jest liczbą punktów decyzyjnych oraz ilością stopni zagnieżdżenia w funkcji
Pisząc kod, powinno nam zależeć na tym, aby obie te metryki były jak najniższe, dzieki czemu utrzymanie takiego kodu w przyszłości, a także zrozumienie go, będzie dużo prostsze.
Jeśli chcecie poznać te metryki lepiej, polecam krótką lekturę: Is your code too complicated?
Komentarze (1)
Polecam również ten plugin zapiąć sobie do testowania złożoności https://pypi.org/project/pytest-mccabe/
najlepiej przed tym jak jeszcze jednostkowe i integracyjne testy są odpalane na CI - np jako element testowania statycznego kodu
pytest-mccabepytest plugin to run the mccabe code complexity checker.PyPI