Pregunta

Sigo encontrando este término ganchos en varios artículos de programación. Sin embargo, no entiendo qué son y cómo se pueden usar. Así que solo quería saber cuál es el concepto de ganchos; Si alguien pudiera vincularme a algunos ejemplos, particularmente en el contexto del desarrollo web, sería genial.

¿Fue útil?

Solución

Mi respuesta se refiere a WordPress que está escrita en PHP, pero esta es una mecánica de desarrollo general, por lo que realmente no debería importar, a pesar del hecho de que pones 'Python' en el título de tu pregunta.

Un buen ejemplo de uso de ganchos, casualmente en el desarrollo web, son Ganchos de WordPress.

Se nombran apropiadamente en el sentido de que permiten una forma de "enganchar" ciertos puntos de la ejecución de un programa.

Entonces, por ejemplo, el wp_head es una 'acción' que se emite cuando se está procesando un tema de WordPress y es en la parte donde representa la parte que está dentro del <head> Etiquetas. Diga que desea escribir un complemento que requiera una hoja de estilo adicional, un script o algo que normalmente iría dentro de esas etiquetas. Puede 'engancharse en esta acción definiendo una función que se llamará cuando se emite esta acción. Algo como:

add_action('wp_head', 'your_function');

your_function() podría ser algo tan simple como:

function your_function() {
    echo '<link rel="stylesheet" type="text/css" href="lol.css" />';
}

Ahora, cuando WordPress emite esta acción haciendo algo como do_action('wp_head');, verá que your_function() estaba 'enganchado a' esa acción, por lo que llamará a esa función (y pase cualquier argumento si toma alguno, como se define en la documentación para cualquier gancho en particular).

Larga historia corta: le permite agregar funcionalidad adicional en puntos específicos de la ejecución de un programa 'enganchando' esos puntos, en la mayoría de los casos asignando una devolución de llamada de función.

Otros consejos

Dependiendo de los antecedentes de la persona que pregunta, a veces, la respuesta a esta pregunta puede ser tan simple como los ganchos suelen ser otra palabra para un manejador de eventos, por lo que Blaenk dio una excelente explicación.

También hay usos de esta frase que son cuando inyectas un evento o código en un proceso que de otra manera no tiene eventos como lunar por ejemplo.

Licenciado bajo: CC-BY-SA con atribución
scroll top