是否存在搜索多余代码的模块



有没有一个模块可以找到不需要的代码
举个例子,一个脚本的代码不需要运行脚本:

#!/usr/bin/env perl
use warnings;
use 5.12.0;
use utf8;
binmode STDOUT, ':utf8';
use DateTime;
use WWW::Mechanize;
sub my_print {
    my ( $string, $tab, $color ) = @_;
    say $string;
}
sub check {
    my $string = shift;
    return if length $string > 10;
    return $string;
}
my_print( 'Hello World' );

不明确。众所周知,Perl在不实际执行的情况下很难进行分析,以至于编译一个稍后运行的Perl程序实际上需要包含一个Perl解释器的副本!因此,Perl的代码分析工具非常少。你能做的就是使用探查器,但这有点过头了(正如我所提到的,这需要实际执行程序。我喜欢Devel::NYTProf。它会吐出一些HTML文件,显示每个行或子行执行了多少次,以及在那里花了多少时间,但这只适用于程序的特定执行。它会让你看到WWW::Mechanical已加载,但从未调用过,但它无法告诉你是warnings还是binmode对处决有任何影响。

Devel::Cover提供了代码覆盖率度量,在这里可能有一些用处。

最新更新