Capítulo 40. Metaclasses e herança
Este trabalho foi traduzido com recurso a IA. Agradecemos o teu feedback e comentários: translation-feedback@oreilly.com
No Capítulo 39, a gente explorou decoradores e estudou exemplos de como usá-los. Neste último capítulo técnico do livro, vamos continuar nosso foco em criadores de ferramentas com uma revisão detalhada de outro tópico avançado: metaclasses, um protocolo para gerenciar objetos de classe em vez de suas instâncias, apresentado brevemente no Capítulo 32.
Em um nível básico, as metaclasses estendem o modelo de inserção de código dos decoradores. Como aprendemos no capítulo anterior, os decoradores nos permitem aumentar funções e classes interceptando sua criação. As metaclasses nos permitem, de forma semelhante, interceptar e aumentar a criação de classes — elasfornecem um gancho para inserir lógica extra a ser executada na conclusão de uma instrução class, embora de maneiras diferentes dos decoradores.
As metaclasses também podem fornecer comportamento para classes com métodos localizados em uma árvore de herança separada, ignorada para instâncias normais, não pertencentes à classe. Embora isso permita que as metaclasses processem suas classes de instância após a criação, também complica a semântica de de classe e torna a herançamais complexa — cujadefinição completa pode finalmente ser detalhada aqui.
Como todos os assuntos abordados nesta parte do livro, este é um tópico avançado que pode ser estudado conforme a necessidade. Metaclasses ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access