LINUX.ORG.RU

Оценка сложности кода/структуры проекта графами?

 , , ,


3

4

Вопрос к подступающей пятнице,

есть проект, (на Python, но в общем случае не важно) – есть ли инструменты, позволяющие оценить и выявить сложность кода статическим анализом?

Например, графами, чтобы наглядно видеть зависимость вызовов, и, как следствие, линейный граф == хороший код, дерево == хороший код, ацикличный граф - норм, цикличный и запутанный == выявлены ноды (функции или классы), которые нарушают «нормальность».

В какую сторону копать?

Такие метрики есть и довольно легко гуглятся, начать можно с https://en.wikipedia.org/wiki/Programming_complexity и далее по ссылкам. Но если говорить про этот тред, то есть нюанс - python. Подозреваю, что в общем случае единственная возможность узнать, что делает программа, - выполнить её. Хуже, наверное, только перл, который даже распарсить без выполнения невозможно.

Laz ★★★★★ ()
Ответ на: комментарий от Laz

Для python готов ограничиться только той информацией, которую можно вытянуть статическим анализом.

omegatype ★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.