Co je nedosažitelný kód?

Nedochozatelný kód je programovací kód, který nelze provést v žádném kontextu. Existuje celá řada důvodů, proč by se to mohlo objevit, a mnoho počítačových jazyků neumožňuje provádění programu, pokud je část kódu nedosažitelná. Problémy generované nedosažitelným kódem mohou být vyřešeny buď odstraněním problematické části kódu nebo přepisováním kódu, aby byla sekce znovu dosažitelná.

Při inženýrském softwaru může být relativně snadné vytvořit nedotknutelný kód. Jakékoli významné narušení toku programu má potenciál způsobit sekci kódu, která je nedosažitelná. Například náhodné vytvoření nekonečné smyčky může vykreslit veškerý kód, který přichází po nedostatku, protože by neexistoval žádný způsob, jak se nikdy vymanit ze smyčky a pokračovat v programu. Dalším způsobem, jak k tomu může dojít, je, pokud je funkce kódována, aby se vrátila před provedením celého kódu. V tomto případě by kód po návratu by byl nedostupný.

Existují dva způsoby, jak může být generován nedosažitelný kód. Za prvé, nesprávně manipulační kontrolní struktury při psaní surového kódu může mít za následek oddíly kódu, které jsou nedosažitelné. Za druhé, chyby v kontrolních strukturách, které nejsou během procesu kódování zřejmé, ale zobrazí se, když je program spuštěn, mohou také způsobit kód, který je nedosažitelný. První typ chyby prochází řadou jmen, včetně chyby kódování nebo chyby syntaxe, a druhým typem chyby je chyba runtime. Chyby kódování jsou obvykle zachyceny analyzátory nebo kompilátory, ale chyby za běhu lze detekovat testováním a spuštěním programu po dokončení.

Nedochozatelný kód je často zaměňován s mrtvým kódem, ale tyto dva jsou výrazně odlišné věci. Mrtvý kód je kód, který provádí konkrétní výpočet, ale poté s výsledkem výpočtu nedělá nic. To není stejné jako kód, který je nedosažitelný, což není nikdy exevůbec řezané. Nedostatečný i mrtvý kód lze často z programu bez újmy odstranit, nebo je lze integrovat zpět do programu tím, že pečlivě věnují pozornost kontrolnímu toku programu. Kromě toho může být během kódování a před spuštěním programu obvykle detekován nedosažitelný i mrtvý kód.

Navzdory zdánlivě zoufalé definici je nedosažitelný kód často relativně snadný. Přítomnost nedosažitelného kódu vždy naznačuje problém s kontrolním tokem, takže pečlivá analýza kontrolního toku programu obvykle identifikuje urážlivý kód v krátkém pořadí. Pokud je kontrolní tok programu pečlivě sledován během procesu kódování, je pravděpodobnost generování nedosažitelného kódu velmi nízká.

JINÉ JAZYKY

Pomohl vám tento článek? Děkuji za zpětnou vazbu Děkuji za zpětnou vazbu

Jak můžeme pomoci? Jak můžeme pomoci?