Pure funkce - čisté funkce v PHP

📅   27. 10. 2021
👤   Jan Barášek

Ve funkcionálním programování existuje pojem tzv. čisté funkce (anglicky pure function), což označuje funkci, která na stejný vstup vrací vždy stejný výstup (tedy je deterministická), a zároveň netrpí žádnými side-efekty (tedy neovlivňuje své okolí).

Jak vypadá pure funkce

Příklad pure funkce:

// This is a pure function
function add(int $a, int $b): int
{
	return $a + $b;
}

Jedná se o čistou funkci, protože výstup je vždy stejný na základě vstupních argumentů.

Co není pure funkce

// This is an impure function
function add(int $a, int $b): int
{
	echo 'Adding...';
	file_put_contents('file.txt', 'value: ' . $a);
	return $a + $b;
}

Tento typ funkce není čistý, protože funkce mění souborový systém. Další typ nečisté funkce je případ, kdy interaguje s databází, vypisuje na obrazovku a podobně.

Nechte si posílat nové články do mailu:

Jan Barášek     Více o autorovi

Autor článku podniká jako senior software architekt v Praze. Navrhuje a spravuje velké webové ekosystémy, které znáte a používáte. Během mnoha let nabral hluboké zkušenosti, které tímto webem předává dál.

Rád vám pomůžu:

Kontakt Konzultace a služby