アンMoose
に関するベストプラクティスにしばしば見勧告は以下の通りです:"use namespace :: autoclean"を "ムース無し"にするのはなぜですか?
それはあなたのパッケージのコンパイルサイクルの終わりに、あなたのクラスの名前空間からインポートされたシンボルを削除して「使用
namespace::autoclean
ビットは、単に良いコード衛生です(これはパッケージの最後にno Moose
を置くのが好ましいです) "というように、キーワードは含まれていません。
取られたMoose::Manual::BestPractices(emphasis mine)。
私は上記の引用についてはすべてを理解では、一つのことを除い:なぜnamespace::autoclean
の使用はレキシカルスコープの終わりにno Moose
の使用に好まれますか?
namespace::autoclean
はより汎用性があり、より多くのオプションを使用できるようになっているか、実装された本質的なものがあります(具体的にはMoose
クラス用に調整されています)。
これを明確にするドキュメントは見つかりませんでした。正解を知りたいと思います。
あなたが同時に過負荷を使うことを計画しているなら、 'namespace :: autoclean'もコードを壊します。その場合は、 'namespace :: sweep'を試してみてください。 – friedo
現在の 'namespace :: autoclean'(v0.28、Oct 2015)のドキュメント[states](http://stackoverflow.com/questions/9559064/why-is-use-namespaceautoclean-preferred-to-no-moose) "過負荷によってインストールされたマジックサブシステムはクリーニングされません"。 –