我目前正在开发一个模块,该模块将禁用某些功能以用于Web应用程序和独立应用程序。
最简单的方法是声明全局变量来打开/关闭这些功能:
#### package
package a:Features;
our $F1 = 0;
@EXPORT_OK = (F1);
sub new {
..........
if ( $F1 == 1 ) {
...........
...........
}
}
来电计划
#main Program
use a:Features;
our $F1;
$F1 = 1;
是否有更好的方法或模块可以管理模块/包中的功能?
答案 0 :(得分:4)
全局变量的问题在于,不能将模块作为较大程序的一部分多次使用,而不会在远处造成恶意行为。
相反,使接口对象成为对象,模块是否作为Web应用程序工作的选项进入构造函数。