微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

清理庞大的Perl Codebase

我目前正在开发一个大约15年的Web应用程序.

它主要包含带有HTML :: Template模板的CGI perl脚本.

它有超过12 000个文件和大约260 MB的总代码.我估计不需要超过1500 perl脚本,我想摆脱所有未使用的代码.

实际上没有为代码编写测试.

我的问题是:

>您是否了解任何可以帮助我获取已使用和必需模块列表的CPAN模块?
>如果你想摆脱所有额外的代码,你的方法是什么?

我在考虑以下方法

>尝试覆盖使用并要求perl builtins使用在特定位置输出加载的文件名的perl
>覆盖警告和/或严格模块导入功能,并在特定位置输出文件
>研究Devel :: Cover perl模块并采用相同的方法并在进行手动测试而不是自动测试时分析代码
>用自定义的perl可执行文件替换它,它将记录它读取的文件的每个名称(我不知道该怎么做)
>一些创意使用lsof(?!?)

解决方法

Devel::Modlist可能会为您提供所需,但我从未使用过它.

我需要做几次像这样的事情,我选择了在程序结束时检查%INC的更强力方法.

END {
    open my $log_fh,...;
    print $log_fh "$_\n" for sort keys %INC;
}

原文地址:https://www.jb51.cc/Perl/241720.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐