测量JSP项目大小的好方法是什么?

时间:2011-10-11 13:54:11

标签: jsp metrics code-metrics sizing

鉴于现有的JSP项目,我想了解项目“视图”部分的复杂性/大小。这是我到目前为止所做的:

  • 拉出最近x个月内从生产服务器编译的JSP列表(消除'死'jsps)。
  • 写了一个快速扫描程序,找到导入已编译页面的JSP片段文件。
  • 从文件系统中拉出文件大小和时间戳。

所以现在我有一个页面列表和导入这些页面的片段,以及它们的大小,以及它们最后一次编译和更改。

但我真正需要知道的是页面有多复杂;其中一些页面上有很多Java代码。这是一个很大的项目,所以要浏览每个页面和大小,这将是乏味的,可能不那么准确。

我打算编写另一个扫描程序来测量<%和%>之间的代码,但我想知道是否有某种指标生成器可以做到这一点。我希望它输出页面的“大”程度以及页面上代码的“大”程度。重点是隔离小,中,大和大页面,因此绝对测量不如相对重要。

编辑: 写了另一个扫描程序来计算JavaScript行数,Java(Scriptlet)行,HTML行和taglib用例实例。因此,通过使用扫描仪的结果,我有一些参数,表明“复杂性”。不是很干净,但现在还可以。

1 个答案:

答案 0 :(得分:1)

所以问题是你有一些散布着html的Java代码,所以没有标准的度量工具可以工作。

不是现成的,但我们的Source Code Search Engine可能会非常接近。这是一个通过使用语言准确的词法提取索引源代码来搜索大型代码库的工具。这里的相关性是它计算SLOC,评论计数,Halstead和Cyclomatic对其索引的文件的度量,因此如果您忽略搜索功能,则可以获得指标。度量标准生成为XML文件(每个源文件有一个“记录”),因此您可以对它们进行任何进一步的处理。请参阅链接网页上的指标讨论。

虽然我们确实有一个JSP词法分析器,但尚未使用搜索引擎进行测试。我们已经建立了几十个词法分析器,所以这对我们来说应该很容易(我们很乐意这样做)。这将直接产生你想要的答案。

如果您不想沿着这条路走下去,您可以按照简单的想法提取<%和%>之间的代码,将其转储到与原始JSP文件并行的文件中, 并通过搜索引擎的(生产)Java lexeme提取器将该代码交给搜索引擎,并以此方式获取您的指标。词法分析器在文件格式错误的情况下非常强大,因此提取的Java片段可能并非总体上合法,这一点不会太麻烦。