在我们的产品中,我们有一个很大的实用程序文件,我们需要在许多文件的开头(使用do
)。是否有理由不将其转换为模块?例如,不要这样做:
do '../dbi_utilities.pl';
our ($db,$user,$pw,$attr);
my $Data = DBI->connect($db,$user,$pw,$attr) or die "Could not connect to database: $DBI::errstr";
我不能只是这样做吗?:
use AppUtil;
my $Data = AppUtil->connect();
最佳答案
不这样做的唯一原因是时间。
也就是说,需要花费一些时间来清理界面以及所有调用应用程序以使用新界面。
当您开始使用适当的测试(“make test”或“./Build test”或只是“prove ...”)并能够检查您所做的更改时,现在花费的时间已经远远超过了在 checkin 之前不会破坏任何内容。因此,请务必进行转换。请注意,这不是免费的 yield 。