Referenční průhlednost: Porovnání verzí

Smazaný obsah Přidaný obsah
mBez shrnutí editace
napřímení odkazů
 
Řádek 1:
'''Referenční průhlednost''' neboli '''referenční transparentnost''' je v [[programování]] vlastnost [[výraz (programování)|výrazů]], která znamená, že daný výraz lze [[vyhodnocení výrazu|vyhodnotit]] bez ohledu na jeho kontext v rámci [[zdrojový kód|zdrojového kódu]]. Tedy že výraz se zadanými stejnými [[hodnota (informatika)|hodnotami]] bude vyhodnocen vždy na stejný výsledek (neboť nezávisí na skrytých hodnotách, například na [[globální proměnná|globálních proměnných]]) a sám nemá žádné skryté [[vedlejší účinek (programování)|vedlejší účinky]].
 
Referenčně průhledný [[podprogram]] je tak [[funkce (matematika)|funkcí]] v [[matematika|matematickém]] smyslu. Díky tomu na něj [[programátor]] i [[překladač]] mohou nahlížet izolovaně a [[počítačový program]] složený z referenčně průhledných výrazů je vlastně [[přepisovací systém|přepisovacím systémem]]. To usnadňuje dosáhnout dokazatelné [[správnost]]i, umožňuje nebo alespoň výrazně usnadňuje či zefektivňuje řadu [[optimalizace (informatika)|optimalizačních technik]] (například [[líné vyhodnocování]], [[statická analýza kódu|statickou analýzu kódu]]) a usnadňuje vytváření [[Paralelní výpočty|paralelních programů]]. Tím je motivován vznik [[programovací jazyk|programovacích jazyků]], které referenční průhlednost do značné míry podporují a nebo i vyžadují.