Redundante code

Uit Wikipedia, de vrije encyclopedie
Ga naar: navigatie, zoeken

Redundante code, of overbodige code, is overbodige broncode in een computerprogramma die wel uitgevoerd wordt maar geen of weinig invloed heeft op de uitvoer ervan. Redundante code is ongewenst omdat hij leidt tot verspilling van schijf- en werkgeheugen, uitvoeringstijd en van onderhoudstijd. Bovendien vergroot overbodige code, net als alle code, de kans op fouten in het computerprogramma. De compiler van het computerprogramma kan tijdens de compilatie redundante code overslaan in een optimalisatieslag (dead code stripping of dead code elimination). Toch is verwijderen van redundante code vanwege de kosten zelden een prioriteit, behalve in speciale toepassingen.[bron?]

Voorbeelden[bewerken]

<?php
$foo = "Deze variabele wordt gebruikt.";
$bar = "Deze variabele is redundant.";

echo $foo;
?>

De tweede variabele $bar is redundant aangezien hij wel gedeclareerd is (er is werkgeheugen voor gereserveerd) is maar toch niet gebruikt wordt.

<?php
$sql 		= "SELECT * FROM reacties WHERE datum BETWEEN CURDATE() AND (CURDATE() - INTERVAL 1 DAY)";
$resultaat 	= mysql_query($sql); 
?>

Deze code is redundant omdat er wel reacties opgehaald worden vanuit de database, maar met het resultaat $resultaat vervolgens niets gedaan wordt.

Ontstaan van redundante code[bewerken]

Er zijn verscheidene redenen waarom de broncode van een computerprogramma redundante code bevat.

  1. test: tijdens de ontwikkeling van software kunnen de ontwikkelaars tijdelijk stukken code invoegen om iets te testen: er wordt bijvoorbeeld een functie gedeclareerd die controleert of een bepaald stuk code het gewenste resultaat geeft.
  2. oude code: redundante code is vaak een overblijfsel van oude code, die - eventueel in uitgeschakelde vorm - achtergebleven is na een wijziging, net als in gewone leesteksten met restanten. Door tijdnood en behoefte oude versies paraat te houden blijft oude code staan.
  3. nieuwe code: ook is het mogelijk dat de programmeur al aan een nieuwe functie is begonnen die al wel code heeft, maar nog niet nuttig is. Bijvoorbeeld een stuk code dat de gebruiker van een forum meteen de laatste reacties laat zien.
  4. in het algemeen is het niet productief om redundante code weg te halen.[bron?] Als een programma werkt, moet men naar de volgende klus. Mooi opmaken van een werkend programma is dan niet aan de orde en zelfs riskant omdat fouten geïntroduceerd kunnen worden. Zo blijft de redundante code achter.

Zie ook[bewerken]