2012-04-23 174 views
5

您可以为Python推荐哪些有用的静态代码分析。我相信它们对重构代码很有用。 我知道Python中的静态代码分析?

  • 为模块依赖snakefood
  • pycallgraph动态调用图
  • pylint的窃听器

是否有静态调用分析器?如果我想编写一个自定义的,这将是最简单的方法?

你能想到什么其他类型的静态代码检查?或者甚至可能是一些像ABC一样的Python魔法?

编辑:我发现,无论是使用http://docs.python.org/3.3/library/ast.html或者甚至http://www.astroid.org/可以用来编写一些自定义的解析器。然后可以使用graphviz来对UML图形进行可视化甚至是PlantUML。

+4

这似乎是关于5个不同的问题。你可能想分解它。 – 2012-04-23 11:13:25

+0

单元测试对于重构代码也很有用。 – dm03514 2012-04-23 12:31:10

回答

2

这是一个非常强大的Python类型inferencer https://github.com/yinwang0/pysonar2

具有较强的错误检查的能力,但它不是通过其接口暴露出来,但我相信你可以做很多真棒检查基于它。

0

Pysonar2是一个非常好的实现abstract interpretation来键入推理Python项目。我对另一个类似问题的回答是here