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