将代码解析为组件

时间:2011-09-23 16:30:14

标签: parsing parser-generator

我需要解析一些代码并将其转换为组件,因为我想制作一些关于代码的统计信息,如代码行数,条件语句位置等等。

我可以使用任何工具来实现这一目标吗?

2 个答案:

答案 0 :(得分:1)

Antlr是一个很好的工具,适用于多种语言,具有良好的文档和许多包含语言的示例语法。

你也可以去老派并使用Yacc和Lex(或GNU版本的Bison和Flex),它们在生成解析器时非常好book,以及经典的dragon book。< / p>

然而,这可能有点矫枉过正,您可能只想使用Ruby甚至Javascript

答案 1 :(得分:0)

你提到了两个截然不同的任务:

  • 将代码重构为模块化组件
  • 运行静态代码分析以获取代码指标。

我建议:

  • Resharper,作为顶级代码重构工具(假设你是一个.NET人)
  • NCover和NDepend用于静态代码分析。你得到#line代码,圈复杂度,抽象性与不稳定性图......所有很酷的东西。