Що таке функційне програмування?

Концепції парадигм програмування

Eleanor Thomas

Senior Data Analytics Engineer

Що таке функційне програмування?

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

Вхід, Обробка, Вихід

Концепції парадигм програмування

Що таке чиста функція?

  • Поняття чистої функції у функційному програмуванні походить з математики
  • Чисті функції лише читають вхід і лише генерують вихід
  • Чисті функції не мають «побічних ефектів»
  • Без побічних ефектів означає:
    • Немає впливу на інші змінні в програмі
    • Немає запису у файли
    • Немає збереження інформації в базу даних
Концепції парадигм програмування

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

Чиста функція

def pure_sum(x, y):
    output = x + y

    return output

Не чиста функція

def not_pure_sum(x, y):
    output = x + y

    print(output)

    return output
Концепції парадигм програмування

Переваги чистих функцій

  • Чисті функції легше розуміти й налагоджувати
  • Тестувати чисті функції простіше
  • Вихід для заданого входу повністю передбачуваний
    • Як у математиці: 5 у квадраті завжди 25

Вхід, Вихід

Концепції парадигм програмування

Давайте потренуємось!

Концепції парадигм програмування

Preparing Video For Download...