Вопрос

Я продолжаю находить этот термин в различных статьях для программирования. Однако я не понимаю, что они есть и как они могут быть использованы. Так что я просто хотел знать, что такое концепция крючков; Если бы кто -то мог связать меня с некоторыми примерами, особенно в контексте веб -разработки, это было бы здорово.

Это было полезно?

Решение

Мой ответ относится к WordPress, который написан в PHP, но это механик общего развития, поэтому он не должен иметь значения, несмотря на то, что вы вкладываете «Python» в заголовок вашего вопроса.

Один хороший пример использования крючков, по совпадению в веб -разработке, являются WordPress 'Hooks.

Они названы надлежащим образом в том смысле, что они позволяют «зацепить» определенные точки выполнения программы.

Так, например, wp_head это «действие», которое испускается, когда производится тема WordPress, и оно находится в той части, где оно воспринимает ту часть, которая находится в пределах <head> теги. Скажите, что вы хотите написать плагин, который требует дополнительной таблицы стилей, сценария или чего -то, что обычно проходило бы в этих тегах. Вы можете «зацепить» это действие, определив функцию, которая будет вызвана, когда это действие испускается. Что-то типа:

add_action('wp_head', 'your_function');

your_function() Может быть что -то такое простое, как:

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

Теперь, когда WordPress излучает это действие, делая что -то вроде do_action('wp_head');, это увидит, что your_function() был 'зацепился в' это действие, поэтому оно будет называть эту функцию (и передайте ему какие -либо аргументы, если это требует, как определено в документации для любого конкретного крючка).

Короче говоря: он позволяет добавлять дополнительные функциональности в определенных точках выполнения программы, «зацепив» эти точки, в большинстве случаев путем назначения обратного вызова функции.

Другие советы

В зависимости от фона человека, который иногда спрашивает, ответ на этот вопрос может быть таким же простым, как крючки, как правило, является еще одним словом для обработчика событий, для которого Блаенк дал отличное объяснение.

Существуют также использование этой фразы, которая вводит событие или код в процесс, который в противном случае не имеет таких событий, как родинки Например.

Лицензировано под: CC-BY-SA с атрибуция
scroll top