Capítulo 40. Metaclases

Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com

En el capítulo anterior, exploramos los decoradores y estudiamos varios ejemplos de su uso. En este último capítulo técnico del libro, vamos a seguir centrándonos en los constructores de herramientas e investigar otro tema avanzado: las metaclases.

En cierto sentido, las metaclases simplemente amplían el modelo de inserción de código de los decoradores. Como aprendimos en el capítulo anterior, los decoradores de funciones y clases nos permiten interceptar y aumentar las llamadas a funciones y las llamadas a la creación de instancias de clases. Con un espíritu similar, las metaclases nos permiten interceptar y aumentar la creación de clases:proporcionan una API para insertar lógica adicional que se ejecutará al final de una sentencia class, aunque de forma distinta a los decoradores. En consecuencia, proporcionan un protocolo general para gestionar objetos de clase en un programa.

Como todos los temas tratados en esta parte del libro, éste es un tema avanzado que puede investigarse según las necesidades. En la práctica, las metaclases nos permiten obtener un alto nivel de control sobre el funcionamiento de un conjunto de clases. Se trata de un concepto poderoso, y las metaclases no están pensadas para la mayoría de los programadores de aplicaciones. Y, francamente, tampoco es un tema para pusilánimes: algunas partes de este capítulo pueden merecer ...

Get Aprender Python, 5ª Edición now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.