Часто встречающаяся рекомендация в отношении лучших практик, касающихся Moose
, следующая:
"Бит использования namespace::autoclean
- это просто хорошая гигиена кода, так как он удаляет импортированные символы из пространства имен вашего класса в конце цикла компиляции вашего пакета, включая ключевые слова Moose
. После того, как класс создан, эти ключевые слова не требуется. (это предпочтительнее, чем помещать no Moose
в конце вашего пакета) . "
Снято для Moose :: Manual :: BestPractices (выделено).
Я понимаю все, что касается приведенной выше цитаты, за исключением одного: почему предпочтительнее использование namespace::autoclean
вместо использования no Moose
в конце лексической области?
Это просто потому, что namespace::autoclean
более универсален, допускает больше возможностей при его использовании, или есть что-то присущее тому, как оно было реализовано (возможно, специально адаптированное для классов Moose
), что делает его более надежным?
Я не нашел документации, разъясняющей это, и я бы очень хотел узнать правильный ответ.