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

Практический курс по функциональному программированию в C++: от чистых функций и лямбд до ranges, композиции и error handling. Без абстрактной теории — только применимый стиль, современные инструменты и реальные задачи с рефакторингом.
Средний уровень
Сертификат Stepik

Чему вы научитесь

  • Писать чистые функции и проектировать код с минимальным количеством побочных эффектов.
  • Использовать лямбда-выражения, функции высшего порядка и стандартные алгоритмы STL вместо ручных циклов.
  • Строить выразительные пайплайны обработки данных с помощью std::ranges и композиции функций.
  • Реализовывать безопасную обработку ошибок через std::optional и std::expected без злоупотребления исключениями.
  • Осознанно комбинировать функциональный и императивный стили в C++, понимая границы и уместность FP-подхода.

О курсе

Этот курс — практическое погружение в функциональный стиль программирования в современном C++. Мы не будем изучать абстрактное "академическое FP" и не будем переписывать язык под чужую парадигму. Вместо этого разберём, как применять функциональные идеи там, где они действительно усиливают код: делают его чище, безопаснее и легче для тестирования.

Курс построен последовательно. Сначала вы разберётесь с фундаментом: что такое чистые функции, почему побочные эффекты усложняют систему и как мыслить через преобразование данных, а не через изменение состояния. Затем перейдём к лямбда-выражениям, функциям высшего порядка и работе со стандартными алгоритмами STL вместо ручных циклов.

Отдельный блок посвящён неизменяемости и тому, как её применять в C++ без потери производительности. Мы разберём std::ranges и ленивые вычисления, научимся строить читаемые пайплайны обработки данных и использовать композицию функций. В разделе про обработку ошибок вы увидите, как применять std::optional и std::expected для более явной и безопасной логики.

В финале вы закрепите материал на практических задачах и рефакторинге кода. В результате вы научитесь осознанно комбинировать функциональный и императивный подходы, понимая их границы и сильные стороны.

Для кого этот курс

Для всех желающих, кто уже знаком с основами языка и хочешь разобраться в важной парадигме языка.

Начальные требования

Понимание базового синтаксиса(функции, классы, ссылки, константы и шаблоны на базовом уровне), знание STL, базовые знания ООП и основных семантик.

Наши преподаватели

Как проходит обучение

Для каждой темы дана теория и вопросы, в конце раздела Вам ждут задачи для отработки пройденного материала. В конце курса Вас ждут контрольные задачи и задачи на рефакторинг уже имеющегося кода.

Программа курса

загружаем...
Certificate

Сертификат

Сертификат Stepik

Сколько стоит обучение

Price: 990 
Вы попробовали и поняли, что вам сейчас не подходит этот курс? Ничего страшного, мы вернём вам деньги в течение 30-ти дней после покупки.

Часто задаваемые вопросы

Расскажите о курсе друзьям

Price: 990