Основные возможности платформы Hexlet не доступны в вашем браузере.
Пожалуйста, обновитесь. Выбрать браузер.
курс

PHP: Функциональное программирование

В этом курсе мы научимся использовать функциональные возможности PHP. Расширим наш арсенал удобными инструментами, заимствованными из других языков. В каждом уроке, помимо изучения встроенных средств, мы будем так же показывать примеры реализации из популярной библиотеки функционального программирования, которая существенно расширяет наши возможности и исправляет недостатки встроенных функций. Один из самых важных примеров связан с тем, что эта библиотека может работать не только с массивами, но и любыми объектами, реализующими интерфейс Traversable.

Сначала рекомендуем пройти курс PHP: Построение абстракций

1.

Введение

теория (видео 08:12)

Познакомиться с курсом и узнать о парадигме функционального программирования.

2.

Map: Отображение списков

теория (видео 06:47) / тесты / упражнение

Познакомиться с понятием отображения списков. Научиться применять map.

3.

Фильтрация коллекций

теория (видео 04:27) / тесты / упражнение

Познакомиться с операцией фильтрации коллекции и функцией array_filter.

4.

Функция zip

теория (видео 04:48) / тесты / упражнение

Изучить функцию zip и рассмотреть варианты ее применения.

5.

Функция reduce

теория (видео 09:15) / тесты / упражнение

Рассмотреть функцию reduce, также известную как accumulate или fold.

6.

Sort

теория (видео 06:57) / тесты / упражнение

Познакомиться с обобщенной сортировкой.

7.

Частичное применение функции

теория (видео 08:47) / тесты / упражнение

Рассмотреть технику ФП, называемую частичным применением функции.

8.

Partition

теория (видео 02:21) / тесты / упражнение

Рассмотреть функцию partition, которая разделяет коллекцию на основе фильтрующей функции.

9.

Группировка

теория (видео 02:00) / упражнение

Изучить функцию группировки.

Испытания

Это практические задания, которые мы советуем выполнить после завершения курса. Задания помогут вам получить дополнительный опыт в программировании и закрепить полученные навыки.

Статистика
1377
учащихся
283
вопроса
и ответа
10
часов
Учитель