perl – 为什么“使用namespace :: autoclean”优先于“no Moose”?

关于Moose的最佳做法的经常看到的建议如下:

“The use namespace::autoclean bit is simply good code hygiene,as it removes imported symbols from your class’s namespace at the end of your package’s compile cycle,including Moose keywords. Once the class has been built,these keywords are not needed. (This is preferred to placing no Moose at the end of your package).”

Moose::Manual::BestPractices(重点为我).

我理解上述引用的一切,除了一件事情:为什么使用namespace :: autoclean比较适合在词法范围的末尾使用Moose?

它只是因为namespace :: autoclean是更多功能,允许更多的选择在其使用,或者有什么内在的方式实现(特别为Moose课程量身定做,这可以使它更可靠?

我发现没有文件澄清这一点,我很想知道正确的答案.

解决方法

没有麋鹿只摆脱通过使用Moose导入的功能.使用namespace :: autoclean可以摆脱所有导入的函数.

如果你总是使用namespace :: autoclean,那么如果你稍后回来并从某个模块导入一个函数,那么你不需要记住不要使用Moose来使用namespace :: autoclean.否则,你可能会忘记这样做.

相关文章

1. 如何去重 #!/usr/bin/perl use strict; my %hash; while(...
最近写了一个perl脚本,实现的功能是将表格中其中两列的数据...
表的数据字典格式如下:如果手动写MySQL建表语句,确认麻烦,...
巡检类工作经常会出具日报,最近在原有日报的基础上又新增了...
在实际生产环境中,常常需要从后台日志中截取报文,报文的形...
最近写的一个perl程序,通过关键词匹配统计其出现的频率,让...