Включено в курс
Чему вы научитесь
- Использовать продвинутые возможности функций для написания лаконичного и эффективного кода
- Отделять чистые функции от функций с побочными эффектами
- Использовать функции высшего порядка (map/filter/reduce) для обработки коллекций
- Отличать императивную парадигму программирования от декларативной (функциональной)
Описание
На этом курсе вы изучите функции. Вы узнаете, что такое объекты первого рода, безымянные лямбда-функции и функции высшего порядка. Вы научитесь использовать функции внутри других функций, использовать встроенные операции map, filter, reduce и писать обертки для расширения функционала. Знания из этого курса помогут проектировать лаконичные и эффективные программы, отделять побочные эффекты от чистого кода. Этот курс подойдет тем, кто продолжает изучать JS. Чтобы учиться было проще, стоит заранее изучить курсы JS: Массивы и JS: Объекты.
Программа курса
-
2
Чистые функции
Познакомиться с понятиями "детерминированность" и "побочные эффекты" (side effects). -
4
Оператор Rest (упаковка аргументов)
Узнать, как с помощью rest-оператора упаковывать аргументы функции в массив -
5
Оператор Spread (распаковка аргументов)
Узнать, как использовать spread-оператор при вызове функции -
6
Деструктуризация параметров
Научиться применять технику дестракчеринга для параметров функции -
7
Объекты первого класса
Посмотреть на функции, как на данные. Познакомиться с анонимными функциями. -
13
Рекурсия
Разбираемся в одной из самых важных и интересных базовых концепций — рекурсии и рекурсивных вызовах. -
14
Итеративный процесс
Познакомимся с другим видом применения рекурсии, без откладывания вычислений до самого конца -
15
Абстракция с помощью функций
Обобщить знания о функциях и познакомиться с понятием абстракции -
16
Дополнительные материалы
Статьи и видео, подобранные командой Хекслета. Помогут глубже погрузиться в тему курса
Формат обучения
Испытания
Это практические задания, которые мы советуем выполнить после завершения курса. Задания помогут вам получить дополнительный опыт в программировании и закрепить полученные навыки. Обычно мы рекомендуем выполнить 3-5 испытаний. Но если не получается, не отчаивайтесь. Просто вернитесь к ним позже
Отзывы

Я не новичок в программировании. В этой сфере уже несколько лет. Но информация в этом курсе стала для меня "просветлением".
Теперь я совсем по другому буду смотреть на то как пишу код.
Огромное спасибо за курсы.

Такой приятный курс - не запарный и слегка сложный. Я сейчас завис на первом проекте по фронтэнду и решил отвлечься и случайно наткнулся на этот курс. Даже чаю заварил пока прохожу ))

Просто хочу выразить немного восхищения от Math.sqrt в решении учителя. Всегда думала, что достаточно оптимизации, если доходить до половины числа в цикле, а тут еще круче. Спасибо за такие озарения!

4 часа просидел над задачкой, решил с константами, потом еще пол после просмотра решения учителя и приведения своего кода к виду .map.filter.reduce (убрал кучу лишних констант), но оно того определенно стоит! Зато прочувствовал код изнутри, спасибо за такие задачки!




