首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我是否应该将我的utilities.pl更改为utilities.pm模块?

我是否应该将我的utilities.pl更改为utilities.pm模块?
EN

Stack Overflow用户
提问于 2008-10-08 20:15:16
回答 4查看 310关注 0票数 6

在我们的产品中,我们有一个大的实用程序文件,在我们的许多文件开始时,我们需要它(使用do)。有理由不把它变成一个模块吗?例如,没有这样做:

代码语言:javascript
复制
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";

我就不能这么做吗

代码语言:javascript
复制
use AppUtil;
my $Data = AppUtil->connect();
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2008-10-08 20:40:26

不这样做的唯一原因是时间。

也就是说,清理您的界面以及所有调用应用程序使用新界面都需要时间。

当你开始使用适当的测试("make test“或”.Build test“或仅仅”证明.“)时,你现在所花费的时间将不仅仅是虚构的。并且能够在签入之前检查您的更改不会破坏任何内容。所以,无论如何,皈依。只是要意识到这不是免费的收益。

票数 8
EN

Stack Overflow用户

发布于 2008-10-08 20:20:40

使用do(),每次加载和编译utilities.pl文件,如果不止一次加载和编译该文件,可能会导致问题。此外,use是在编译时完成的,这将允许您的程序更早地失败,甚至可以使用perl -wc进行测试。

最后,将它保存在包中可以保护它的命名空间,随着项目的发展,它可能会很有帮助。

我强烈建议将您的utilites.pl转换为一个装载了use的正确的Perl包。

票数 6
EN

Stack Overflow用户

发布于 2008-10-08 20:20:31

利用它制作一个模块将使它更加健壮。现在,很多事情都是非正式地相互依赖的,但这些依赖关系并不明显。

而且,它将使您能够只导入部分实用程序。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/184662

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档