Чисті функції в PHP

У функціональному програмуванні існує поняття чистої функції, під якою розуміється функція, яка завжди повертає один і той же вихід на один і той же вхід (тобто є детермінованою), і при цьому не страждає від будь-яких побічних ефектів (тобто не впливає на своє оточення).

Як виглядає чиста функція

Приклад чистої функції:

php
// Це чиста функція
function add(int $a, int $b): int
{
return $a + $b;
}

Це чиста функція, оскільки вихід завжди однаковий на основі вхідних аргументів.

Що не є чистою функцією

php
// Це нечиста функція
function add(int $a, int $b): int
{
echo 'Додавання...';
file_put_contents('файл.txt', 'Цінність:' . $a);
return $a + $b;
}

Цей тип функції не є чистим, оскільки функція змінює файлову систему. Інший вид нечистої функції - це коли вона взаємодіє з базою даних, виводить на екран і так далі.

Newsletter

Nejlepsi tipy a triky o PHP do Vaseho e-mailu. Clanky a novinky nejen ze sveta PHP a programovani.