JS: Функциональное программирование
Включено в курс
Чему вы научитесь
- Оценивать сложность функций и упрощать их код
- Продвинутому использованию замыканий
- Использовать композицию функций для решения реальных задач
Описание
На этом курсе вы изучите основы функционального программирования в JavaScript. Вы узнаете, что такое функции первого порядка. Вы научитесь уменьшать сложность функций и поймете, как функции ведут себя в составных выражениях. Вы освоите работу с механизмом замыканий, возвратом функций из функций, каррированием и частичным применением. Знания из этого курса помогут проектировать лаконичные и эффективные программы, отделяя побочные эффекты от чистого кода.
Этот курс подойдет тем, кто продолжает изучать JavaScript. Чтобы учиться было проще, стоит заранее изучить курсы JS: Функции и JS: Объекты.
Программа курса
-
3
Параметры по умолчанию
Знакомимся с новым синтаксисом, позволяющим задавать параметры по умолчанию -
4
Выполнение функций
Углубляем понимание того, как функции ведут себя в составных выражениях -
6
Лексическое окружение (LexicalEnvironment)
Повторяем материал об окружениях в javascript -
7
Возврат функций из функций
Учимся генерировать новые функции на основе старых -
10
Дополнительные материалы
Статьи и видео, подобранные командой Хекслета. Помогут глубже погрузиться в тему курса
Формат обучения
Испытания
Это практические задания, которые мы советуем выполнить после завершения курса. Задания помогут вам получить дополнительный опыт в программировании и закрепить полученные навыки. Обычно мы рекомендуем выполнить 3-5 испытаний. Но если не получается, не отчаивайтесь. Просто вернитесь к ним позже
Отзывы
Поскольку раньше с функциональным программированием не сталкивался, для меня этот курс - стал открытием, очень необычно. Спасибо за новый взгляд на программирование.
Приветствую, дорогой Hexlet! Спасибо автору этого урока за замечательное донесение материала. Задание порадовало простотой и утилитарностью. Я, к своему стыду, не использовал ранее в работе переворот параметров и как-то выкручивался.
Благодарю за задачу, пришлось подумать, перечитать урок рекурсии и оно того стоило, я не ожидал, что решение окажется настолько интересным и в тоже время легким
Решил точно так же, как и учитель, буквально за 10 секунд, чувствую, прогресс есть. Спасибо, Хекслет)
Не обманули, к концу курса я действительно смог понять этот, кажущийся в начале околесицей, код! =)
const f = (x = 5) => y => x + y(3);
f()(x => 7 + x); // => 15
Специально вернулся проверить)