Néstor Iván Cepeda Munevar
Esto es lo que pienso cuando imagino decoradores:
Bueno y aquí la fuente.
JUAN PABLO MAYORGA MENDIETA
Ese sitio es muy bueno, hace poco lo sigo y tiene aportes y artículos muy interesantes
Fredy Mendoza Vargas
Gracias
Los decoradores en Python son una herramienta clave para dar el salto de tareas repetitivas a código más limpio y reutilizable. Aquí entenderás qué son, por qué importan y cómo se relacionan con los paradigmas de programación que Python admite con flexibilidad.
¿Qué cambia del enfoque procedural a nuevos paradigmas en Python?
En el proyecto de clientes se trabajó con un script que escribe a disco y permite añadir, modificar y borrar registros. Ese estilo es programación por procesos o procedural programming, una forma válida de organizar lógica cuando se construyen tareas paso a paso.
¿Qué es un decorador en Python y para qué sirve?
Un decorador es una función que envuelve a otra función para modificar su comportamiento sin cambiar su código interno. La idea es simple, pero puede tomar un poco asimilarla al principio: permite ejecutar trabajo antes y después de la función original.
¿Cómo funciona el patrón wrapper y por qué las funciones son first-class citizens?
La estructura típica descrita: un decorador (ejemplo nombrado "lowercase") recibe una función, define internamente otra función llamada wrapper, ejecuta la función recibida para obtener un resultado y devuelve ese resultado. Aunque ese ejemplo base no hace cambios, el espacio antes y después de la llamada permite introducir lógica útil.
¿Te gustaría compartir en qué parte de tu código aplicarías un decorador para validar acceso o registrar eventos?
Néstor Iván Cepeda Munevar
Esto es lo que pienso cuando imagino decoradores:
Bueno y aquí la fuente.
JUAN PABLO MAYORGA MENDIETA
Ese sitio es muy bueno, hace poco lo sigo y tiene aportes y artículos muy interesantes
Fredy Mendoza Vargas
Gracias
Ingrid Natalia Rodriguez Ovalle
ufff acá está super explicado : https://www.youtube.com/watch?v=DQXm6bIZgvk
Bryan Duarte
Concuerdo totalmente, lo explicó muuuuuuuuuuuy bien.
Fredy Mendoza Vargas
Muy bueno gracias
Rhonal Velasco
EL profesor hablo de procedural programming, pero no la definio y hablo de otro tema pues se distrajo al explicar los paradigmas de programación.
Aqui hay una definición de programación por procedimientos: Esta técnica consiste en basarse de un número muy bajo de expresiones repetidas, englobarlas todas en un procedimiento o función y llamarlo cada vez que tenga que ejecutarse.
_Fuente: _ Esta técnica consiste en basarse de un número muy bajo de expresiones repetidas, englobarlas todas en un procedimiento o función y llamarlo cada vez que tenga que ejecutarse.
Rhonal Velasco
fuente:
Ivan Robles
Thanks rvelasco!! 😃
Alberto Hernández López
Si alguien quiere meterse más a fondo con los *args y **kwargs, les dejo este link:
https://recursospython.com/guias-y-manuales/argumentos-args-kwargs/
Michelle Osorio
Muchas gracias, muy bueno el aporte.
Carlos Enrique Ramírez Flores
Gracias!
Daniel Alberto Esquinazi
En matemáticas y ciencias de la computación funciones de orden superior son funciones que cumplen al menos una de las siguientes condiciones:
high order functions o funciones de orden superior es un concepto importante en la programación funcional.
Omar Daniel Centeno
Ya estamos en el siguiente nivel jajaja
Franco Colmenarez
Yo lo que hago es imaginarme un callback de Javascript para entenderlo más fácil jaja
Omar Daniel Centeno
☹️😭 No sé Shavascript
Nicolás Mayorga Vargas
Este tutorual quizás pueda explicar de manera más ilustrada lom que son los decoradores
Martin Mendez
Son como los callback de javascript entonces?
Erik Elyager
Son similares, con callbacks puedes lograr lo mismo pero los decorators ofrecen una sintaxis más limpia. Alguna vez fueron propuestos para formar parte del lenguaje pero no han llegado oficialmente.
Aunque puedes usarlos con un transpilador.
Nicolas Alpargatero
Después de repetir la clase quedo más claro el concepto. super no esperaba encontrar este tema en este curso.
Leslie Paz Ore
Miguel Angel Reyes Moreno
Los decoradores permiten extender y modificar el funcionamiento de las funciones. Los decoradores envuelven a otra función y permiten ejecutar código antes y después de que es llamada.
Ejemplo:
def lower_case(func): #función A(función B): def wrapper(): # función C #execute code before result = func() #execute code after return result return wrapper
Ejemplo de la vida real: Abrir y cerrar una conexión a una base de datos.
Decoradores en Python
Funciones decoradoras en Python, explicado por Píldoras Informáticas
Miguel Andres Rendon Reyes
Los decoradores, son funciones que envuelven a otra función para modificar su comportamiento. De forma que lo podemos alterar por una vez y no hacer otra función o alterar mucho la que tenemos.
Lucas Ezequiel Veliz
Mi primer ejemplo es una simple suma, el segundo ejemplo es una busqueda binaria:
Omar Daniel Centeno
Excelente! podrías poner el código embebido para que podamos copiarlo y ejecutarlo por nuestra cuenta. En una imagen está medio complicado copiarlo jajjaa. Saludos
Francisco Garcia [C6]
def funcion_decorador(funcion): def funcion_interna(): # codigo de la funcion interna return funcion_interna
Félix Alejandro Zelaya Orellana
Genial!!
Samuel Paredes
Si alguien quiere tener una pequeña reseña a cerca de como funcionan los operadores, les dejo una pequeña imagen del ejemplo mostrado en las diapositivas.
Danelia Sanchez Sanchez
Sobre qué son los Decoradores.
Milton Andrés Sanabria
¿Alguno de ustedes sabe que hace el @ en Python? lo he visto en varios lados, por ejm:
@decorator def func(): pass
Ana Lima
Sí, es para definir un decorador.
¿Qué es un decorador? Un decorador es el nombre de un patrón de diseño. Los decoradores alteran de manera dinámica la funcionalidad de una función, método o clase sin tener que hacer subclases o cambiar el código fuente de la clase decorada.
Los decoradores y su utilización en nuestros programas nos ayudan a hacer nuestro código más limpio, a autodocumentarlo y, a diferencia otros lenguajes, no requieren que nos aprendamos otro lenguaje de programación distinto (cómo pasa con las anotaciones de Java por ejemplo)