Capítulo 9. Decoradores y cierres
Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com
Ha habido varias quejas sobre la elección del nombre "decorador" para esta función. La principal es que el nombre no es coherente con su uso en el libro GoF.1 El nombre decorador probablemente se debe más a su uso en el área del compilador: se recorre y se anota un árbol sintáctico.
PEP 318-Decoradores de funciones y métodos
Los decoradores de funciones nos permiten "marcar" funciones en el código fuente para mejorar su comportamiento de alguna manera. Es algo muy potente, pero dominarlo requiere entender los cierres, que es lo que obtenemos cuando las funciones capturan variables definidas fuera de sus cuerpos.
La palabra clave reservada más oscura de Python es nonlocal, introducida en Python 3.0. Puedes tener una vida provechosa como programador de Python sin utilizarla nunca si te adhieres a un régimen estricto de orientación a objetos centrada en clases. Sin embargo, si quieres implementar tus propios decoradores de funciones, debes entender los cierres, y entonces la necesidad de nonlocal se hace evidente.
Aparte de su aplicación en los decoradores, los cierres también son esenciales para cualquier tipo de programación que utilice devoluciones de llamada, y para codificar en un estilo funcional cuando tiene sentido.
El objetivo final de este capítulo en es explicar exactamente cómo funcionan los decoradores de funciones, ...
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