Hallo Martin,
Je kompakter eine Anweisung formuliert ist, je weniger sie mit Prosa ausgeschmückt ist, umso besser. Eine sinnvolle Wahl von Bezeichnern fällt dabei ausdrücklich *nicht* unter Prosa in diesem Sinn
Stimmt. Die sinnvolle Wahl von Bezeichnern wird leider allzu oft vernachlässigt. Ich halte sie für extrem wichtig. Anfangs sträubte ich mich dagegen, Laufvariablen immer nur i zu nennen, wie man es überall in Programmiertutorials sieht.
Aber inzwischen habe ich eingesehen, dass das in den meisten Fällen sinnvoll ist: i ist kurz, daher unauffällig, und man merkt gleich, dass es "nur" eine Laufvaiable ist. Der Blick wird nicht abgelenkt vom eigentlich wichtigen, nämlich dem Array oder der Collection mit aussagekräftigem Namen, über die z.B. iteriert wird.
Obwohl die Benamsung durchaus auch Spass machen kann, sollte man es (außer für didaktische Zwecke) nicht übertreiben.
Wäre ich Lehrer, würde ich meinen Schülern solchen Code* zeigen:
/***************************************************/
var bin = {
nochOk: 1,
kaputt: 0,
laden: -1
/*
Platz für weitere Zustände...
*/
}, zwischenergebnisVonElementen = NaN;
try {
if (isNaN( zwischenergebnisVonElementen = (+element1.value) + (+element2.value) + (+element3.value) )) {
throw { wieso: 'Der Variablen \'ergebnis\' wurde ein ungültiger Wert zugewiesen.', folge: bin.kaputt };
};
} catch (aua) {
alert (aua.wieso);
switch (aua.folge) {
case bin.kaputt: return;
case bin.nochOk: break;
case bin.laden: ladeWahnsinn();
}
}
actionMit(zwischenergebnisVonElementen);
/***************************************************/
Nicht, dass ich ein Fan von try-catch wäre... das benutzt man natürlich nur, wenn's gar nicht anders geht. Insofern ist der Code nicht nachahmenswert.
Gruß, Don P
*) ist nicht erguttenbergt.