Почему не я люблю декораторы и метаклассы
Я не люблю декораторы и метаклассы. Почти любое использование декоратора и любое использование метакласса ухудшает читаемость кода. Их трудно использовать без усложнения кода. Они приводят к трудновыявляемым багам. Так что их использование должно быть обосновано. И их не нужно использовать там, где можно легко и безболезненно обойтись без них. Если сравнить использование остальных конструкций языка с использованием рогатки, то использование декоратора — это стрельба из пушки, а метаклассы — из системы залпового огня «Град». Последствия их неправильного использования влияют на кодовую базу примерно так же. Декоратор «разламывает» несколько функций и методов, метакласс «разрывает в клочья» несколько классов. ...