Frage

Ich stoße immer wieder auf diesen Begriff Haken in verschiedenen Programmierartikeln. Ich verstehe jedoch nicht, was sie sind und wie sie verwendet werden können. Also wollte ich nur wissen, was das Konzept der Haken ist; Wenn mich jemand mit einigen Beispielen verknüpfen könnte, insbesondere im Kontext der Webentwicklung, wäre dies großartig.

War es hilfreich?

Lösung

Meine Antwort bezieht sich auf WordPress, das in PHP geschrieben ist. Dies ist jedoch ein allgemeiner Entwicklungsmechaniker, daher sollte es nicht wirklich wichtig sein, obwohl Sie Python in Ihren Frage -Titel einfügen.

Ein gutes Beispiel für die Verwendung von Hooks, zufällig in der Webentwicklung, sind WordPress 'Haken.

Sie werden angemessen bezeichnet, als sie einen Weg ermöglichen, bestimmte Punkte der Ausführung eines Programms zu „einfügen“.

Also zum Beispiel die wp_head ist eine "Aktion", die ausgestrahlt wird, wenn ein WordPress -Thema gerendert wird, und es ist in dem Teil, in dem es den Teil in der ist <head> Stichworte. Sagen Sie, Sie möchten ein Plugin schreiben, das ein zusätzliches Stylesheet, ein Skript oder etwas benötigt, das normalerweise in diese Tags gehen würde. Sie können diese Aktion "anschließen", indem Sie eine Funktion definieren, die aufgerufen werden soll, wenn diese Aktion emittiert wird. Etwas wie:

add_action('wp_head', 'your_function');

your_function() Könnte etwas so Einfaches sein wie:

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

Nun, wenn WordPress diese Aktion abgibt, indem sie so etwas wie erledigt do_action('wp_head');, das wird das sehen your_function() war "Ins" in " Diese Aktion, damit sie diese Funktion nennt (und übergeben Sie es Argumente, wenn es in der Dokumentation für einen bestimmten Haken definiert wird).

Kurz gesagt: Kurz gesagt: Sie können zusätzliche Funktionen an bestimmten Punkten der Ausführung eines Programms hinzufügen, indem Sie in den meisten Fällen in den meisten Fällen einen Funktionsaufruf einbeziehen.

Andere Tipps

Abhängig vom Hintergrund der Person, die fragt, kann manchmal die Antwort auf diese Frage so einfach sein, wie Haken normalerweise ein anderes Wort für einen Ereignishandler sind, für den Blaenk eine hervorragende Erklärung gegeben hat.

Es gibt auch Verwendungsmöglichkeiten dieser Phrase, wenn Sie ein Ereignis oder Code in einen Prozess injizieren, der sonst keine Ereignisse wie keine Ereignisse hat Maulwürfe zum Beispiel.

Lizenziert unter: CC-BY-SA mit Zuschreibung
scroll top