Description
De los creadores de «Los titulares sensacionalistas que emocionaron a Spielberg», esta charla tiene como objetivo que la audiencia se familiarice con el casi eternamente esquivo concepto de los «closures» (o «cierres»). Éste es un término con el que en ocasiones nos cruzamos en charlas o por Internet y ante el cual nuestro primer impulso es, aterrados, cerrar la pestaña de nuestro navegador. Pero, quizás muy a nuestro pesar, los «cierres» forman parte de nuestro día a día, y merece la pena aprender a desenvolvernos con ellos aunque sólo sea para —por fin— entender qué es exactamente ese error de UnboundLocalError que nos hemos encontrado a veces… aunque la variable existe.
Para ello, seguiremos un itinerario que va progresivamente desde lo más fácil y familiar a lo más difícil y específico. Empezaremos por introducir algunos problemas sencillos que se suelen presentar en escenarios de programación comunes, entendiendo cuál es su relación con ese arcano y misterioso ente que son los closures . Una vez hayamos comprendido su definición, pasaremos a dar algunos ejemplos prácticos que nos ayuden a asentar el concepto permanente e irreversiblemente en nuestras mentes. También explicaremos su relación con otros componentes del ecosistema Python, incluyendo decoradores y el módulo functools. Por último, mostraremos algunos ejemplos ignotos en los que los primigenios usaron closures para optimizar parte del código de la librería estándar.
Resumen esquemático de la charla:
Scope de las variables vars() / locals() / globals() Qué es una closure Motivación: por qué se usan Ejemplos practicos Decoradores Closures y functools Optimizacion de codigo.