Gibt es eine Namenskonvention für Funktionen höherer Ordnung? Das heißt, Funktionen, die andere Funktionen zurückgeben.
Ein Beispiel in Javascript:
function onlyDivisibleBy(div) { // <-- higher order function
return function (n) {
return n % div === 0;
}
}
var arr = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
arr.filter(onlyDivisibleBy(3)); // [0, 3, 6, 9]
arr.filter(onlyDivisibleBy(5)); // [0, 5]
Ich neige dazu, es wie oben zu schreiben: das heißt, die Lesbarkeit am Aufrufpunkt zu optimieren (ich habe die letzten Zeilen oben als "das Array filtern, um Elemente zu erhalten, die nur durch 5 teilbar sind" gelesen), jedoch am Definitionspunkt entfernt Aus dem Kontext, in dem es verwendet wird, ist es nicht so einfach zu verstehen, was diese Funktion aus ihrem Namen macht.