Skip to main content

Wat is een onbereikbare code?

Onbereikbare code is programmeercode die in geen enkele context kan worden uitgevoerd.Er zijn verschillende redenen waarom dit zou kunnen optreden, en veel computertalen staan geen uitvoering van een programma toe als een sectie code onbereikbaar is.Problemen gegenereerd door onbereikbare code kunnen worden opgelost door het problematische gedeelte van de code te verwijderen of een deel van de code te herschrijven om de sectie opnieuw bereikbaar te maken.

Wanneer engineering software, kan het relatief eenvoudig zijn om onbedoeld onbereikbare code te maken.Elke significante verstoring van de stroom van het programma kan een codenectie veroorzaken die onbereikbaar is.Het toevallige creatie van een oneindige lus kan bijvoorbeeld alle code die erna onbereikbaar is, omdat er geen manier zou zijn om ooit uit de lus te breken en het programma voort te zetten.Een andere manier waarop dit kan gebeuren, is als een functie wordt gecodeerd om te retourneren voordat al zijn code wordt uitgevoerd.In dit geval zou de code na de retourinstructie onbereikbaar zijn.

Er zijn twee manieren waarop onbereikbare code kan worden gegenereerd.Ten eerste kan het onjuist hanteren van besturingsstructuren bij het schrijven van onbewerkte code resulteren in secties van code die onbereikbaar zijn.Ten tweede kunnen fouten in controlestructuren die niet duidelijk zijn tijdens het coderingsproces, maar verschijnen wanneer een programma wordt uitgevoerd, ook code veroorzaken die onbereikbaar is.Het eerste type fout gaat door verschillende namen, waaronder coderingsfout of syntaxisfout, en het tweede type fout is een runtime -fout.Coderingfouten worden meestal gevangen door parsers of compilers, maar runtime -fouten kunnen alleen worden gedetecteerd door het programma na voltooiing te testen en uit te voeren.

Onreikbare code wordt vaak verward met dode code, maar de twee zijn aanzienlijk verschillende dingen.Dode code is code die een bepaalde berekening uitvoert, maar doet dan niets met het resultaat van de berekening.Dit is niet hetzelfde als code die onbereikbaar is, die nooit wordt uitgevoerd.Zowel onbereikbare als dode code kunnen vaak zonder schade uit een programma worden verwijderd, of ze kunnen terug in het programma worden geïntegreerd door zorgvuldige aandacht te schenken aan de programmabesturingstroom.Bovendien kan zowel onbereikbare als dode code meestal worden gedetecteerd tijdens het coderen en voordat een programma wordt uitgevoerd.

Ondanks de schijnbaar verschrikkelijke definitie, is onbereikbare code vaak relatief eenvoudig op te lossen.De aanwezigheid van onbereikbare code duidt altijd op een probleem met de controlestroom, dus zorgvuldige analyse van een programma -besturingstroom zal meestal de aanstootgevende code in korte volgorde identificeren.Als een programma -regeling de stroom zorgvuldig wordt gecontroleerd tijdens het coderingsproces, is de kans op het genereren van onbereikbare code erg laag.