Död kod är kod inom ett program som programmet inte kan nå eller faktiskt inte använder. Den kan vara närvarande av en mängd olika anledningar, och när människor arbetar med programvara identifierar de död kod och bestämmer vad de ska göra åt det. I vissa fall kan människor säkert ta bort det utan att kompromissa med programmet, och kan göra det för att göra programmet mer effektivt. Andra situationer kan kräva att folk lämnar koden i, eller att de är försiktiga när de klipper ut den för att undvika att orsaka problem.
En anledning till att ha död kod är användningen av rutiner under felsökning utan att ta bort dessa rutiner senare. Programmet använder faktiskt inte koden och kan faktiskt vara avskuren från den, men den dröjer sig kvar i systemet. Människor kan också generera död kod genom att återanvända avsnitt från ett annat program, göra ändringar i programvaran eller infoga kod med tanken att använda den i framtiden. Beroende på programmets struktur kan det köra koden men inte göra någonting med den, eller så kan det tycka att materialet är helt oåtkomligt.
Detta segment inom ett program slösar tid och utrymme. Det kan också störa funktionaliteten i vissa fall. Programmet kan hitta död kod förvirrande eller vilseledande och generera fel. När människor hittar exempel måste de granska programmet noggrant för att se hur koden interagerar med det. Det kan vara nödvändigt att infoga ny kod eller modifiera omgivande material för att ta bort koden på ett säkert sätt. I andra fall kan den säkert tas ut.
När död kod består av material som lagts till med framtida oförutsedda händelser i åtanke, kan den lämnas på plats. Människor kan komma åt det när och om det någonsin behövs och aktivera det så att programmet kan använda det. Detta kan vara användbart för situationer som felsökning, där saker inbyggda i programmets struktur kan göra det lättare att identifiera och åtgärda brister och andra problem. Koden kan också skapa en sårbarhet, en viktig faktor när man bestämmer sig för hur den ska hanteras.
Med varje uppdatering tenderar programvaran att samla på sig några lösa trådar och död kod över tiden. Funktioner förändras, människor lägger till material, nya programmerare ansluter sig och tänker på kodningsutmaningar på ett annat sätt, och detritus byggs upp. Regelbundna granskningar för att leta efter främmande eller potentiellt skadlig kod är en viktig del av att hantera programmet. Människor kan utfärda patchar eller nya utgåvor för att lösa problemet och låta användare njuta av en smidigare driftupplevelse, samt förbättrad funktionalitet och säkerhet.