tgoop.com/prog_way_blog/111
Last Update:
Что такое чистая функция
Я часто смотрю видео с собеседований и этот вопрос встречается чуть ли не в каждом втором собеседовании на разных уровнях. И больше всего удивляет, что даже мидлы не знают что это такое и не могут дать точного определения. А я могу 🙂
Чистая функция — это функция, обладающая сразу двумя свойствами:
1. Функция зависит только от входных параметров, на одинаковых наборах входных значений возвращается один и тот же результат вне зависимости от внешних факторов.
2. Функция не влияет на что-либо вне себя. Чистая функция не может изменять внешние переменные, управлять чем-либо извне, создавать файлы, изменять входные параметры по ссылкам и т.д.
Максимально просто, но почему-то знают не все.
Также я подготовил примеры чистых и не чистых функций. Размещаю их по ссылкам, чтобы не раздувать пост в объёме. Примеры на JavaScript
, но код более чем читаемый.
Чем чистые функции так полезны и почему это хорошо? Они ведут себя предсказуемо и их легко тестировать. Чистые функции поддаются тестированию проще других, не мутируют, не вызывают непоняток. Поэтому они так ценятся и в без того проблемном JavaScript
. И в других языках, конечно.
На этом всё. Спасибо за прочтение ❤️
#javascript #theory
BY progway — программирование, IT

Share with your friend now:
tgoop.com/prog_way_blog/111