Що спільного між Pure Function та приготуванням кави в автоматі?

Сергій Єрьомін

(Ага, я пам’ятаю, що вам дуже сподобалася аналогія з Макдональдсом)

Отже, чиста функція (Pure Function) — це функція, яка завжди дає один і той самий результат для тих самих вхідних даних і не має побічних ефектів. Це означає, що чиста функція відповідає двом основним вимогам:

  • Детермінізм;
  • Відсутність побічних ефектів.

Детермінізм, побічні ефекти (Side Effects)? А що воно взагалі таке?

Детермінізм — це коли ти викликаєш функцію з однаковими аргументами, а вона завжди повертає один і той самий результат.

Побічні ефекти — це дії, які відбуваються під час виконання функції і впливають на стан поза цією функцією, або залежать від зовнішнього стану: тобто, зміна глобальних змінних, модифікація об’єктів, які передаються у функцію, робота з файлами, мережеві запити тощо.

Дочитали? Це добре. Продовжуємо далі!

А тепер уявіть два способи приготування кави: за допомогою кавомашини і вручну.

Кава через автомат (Чиста функція):

  • Та сама кава, якщо нажати на ту саму кнопку. Той самий смак і порція того самого розміру;
  • Сьогодні, вчора, завтра — все без змін;
  • Автомат не змінює нічого навколо себе, на кухні чисто. Щось побурухтіло всередині і все.

Кава вручну (Не чиста функція):

  • Оооо! Інша справа! Ви можете поспішати, або ні. Можете робити каву зранку, або вдень. Вчора дві ложки цукру додали, а сьогодні п’єте без — тут залежить від вашого настрою;
  • Тобто, два рази поспіль ви можете отримати різну каву, навіть якщо використовуєте ті самі інгредієнти;
  • Побічні ефекти? Під час приготування, ви можете залишити неприбраним посуд на кухні, використовувати різні інструменти і змінювати їхній стан.

Напишіть, будь ласка, чи сподобалися вам мої приклади з кавою!

І тримайте корисну статтю на тему.

Цей текст з особистого блогу, опублікований з дозволу автора.

Останні статті

Мінекономіки: цифрова платформа оцінки «Пульс» заощадила бізнесу 2 млрд грн

Завдяки впровадженню онлайн-інструменту оцінки бізнесу «Пульс» та активній роботі Ради з питань підтримки підприємництва при…

18.03.2026

Anthropic запустила функцію Dispatch: вона перетворює Claude на аналог OpenClaw

Компанія Anthropic додала функцію Dispatch до агентського режиму Cowork. Вона дозволяє Claude працювати безперервно із…

18.03.2026

Project Detroit: як Java, Python та JavaScript нарешті запрацюють разом

Oracle готується представити на конференції JavaOne, яка триває з 17 по 19 березня, новий проект…

18.03.2026

Розкішні вілли як нові інкубатори штучного інтелекту

Епоха затишних гаражів, де колись народжувалися технологічні гіганти на кшталт Apple чи Google, остаточно відходить…

18.03.2026

Кінець епохи універсальних чат-ботів? Mistral Forge дозволить кожній компанії мати власну LLM

Французька компанія Mistral AI запускає Forge — корпоративну платформу для створення LLM «з нуля» та…

18.03.2026

Штучний інтелект подвоює обсяг готового коду, якість залишається на високому рівні — дослідження Jellyfish

Дослідження, проведене платформою програмної аналітики Jellyfish, підтвердило, що впровадження штучного інтелекту стало поширеним явищем у…

17.03.2026