Redundanz

Seit der Grundschulzeit, als Klein-Thomas fünfzigmal den Satz „Ich soll nicht durch den Klassenraum laufen” in Schönschrift in sein Hausheft schreiben musste, ist ihm Redundanz zuwider. Sicher, dass sich Weihnachten jedes Jahr wiederholt, hat schon seine Vorteile – vor allem wegen der Geschenke. Aber wer etwas älter wird der weiß, dass Weihnachten mit viel überflüssiger Arbeit verbunden ist.

Gleiches gilt auch für die Programmierung. Redundanz sieht im Quellcode nicht nur unschön aus, sie ist auch mit überflüssiger und unnötiger Arbeit verbunden. Sicher, es gibt die zwei Freunde Kopieren und Einfügen. In der Programmierung sind das aber oft falsche Freunde, deren Heimtücke sich spätestens dann zeigt, wenn etwas überarbeitet werden muss.

Wesentlich besser ist es, von Beginn an den eleganteren Weg zu wählen. Bereits mit ganz einfachen Mittel lässt sich viel einsparen. Dazu ein kleines Beispiel. Um den anfangs erwähnten Satz fünfzigmal wiederzugeben, wäre wohl eine Lösung eine Schleife (PHP-Code):

for ($i=0; $i<50;$i ++) {
echo 'Ich soll nicht durch den Klassenraum laufen. ';

Schon da fangen aber für viele die ersten Schwierigkeiten an. Auf den ersten Blick erschließt sich möglicherweise nicht, warum die Variable $i den Startwert Null hat. Auch kann es sein, dass jeder der fünfzig Sätze ein individuelles Merkmal bekommen soll:

Thomas soll nicht durch den Klassenraum laufen.
Marc soll nicht durch den Klassenraum laufen.
Oliver soll nicht durch den Klassenraum laufen.

Auch dafür aber gäbe es eine Lösung:

$namen = array ('Thomas','Marc','Oliver')
for ($i=0; $i<3;$i ++) {
echo $namen[$i].' soll nicht durch den Klassenraum laufen. ';

Es gibt aber Fälle, wo solche Vorgehensweise nicht möglich ist und sich auf Grund des Aufwandes bei der Umstellung nicht anbietet. Selbst dann aber kann zumindest ein Teil der Redundanz verhindert werden:

$satzteil = ' soll nicht durch den Klassenraum laufen. ';
echo 'Thomas'.$satzteil ;
echo 'Marc'.$satzteil ;
echo 'Oliver'.$satzteil ;

Letztendlich ist der beste Weg der, von Beginn an sauber zu programmieren (oder eben nicht durch den Klassenraum zu laufen) und so die Redundanz im Code zu vermeiden.

Kommentar verfassen