Разработка на C++, Java и Haskell

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

Для кого

Программа не знакомит с написанием кода с нуля и рассчитана на слушателей, уже имеющих минимальный опыт программирования (ввод-вывод, циклы). Если вы никогда до этого не программировали, рекомендуем пройти вводные онлайн курсы по Python и C++.

Курсы программы

Java. Базовый курс
  • Введение в Java
  • Базовый синтаксис Java
  • Объекты, классы и пакеты в Java
  • Обработка ошибок, исключения, отладка
  • Ввод-вывод, доступ к файловой системе
  • Generics. Collections. Streams
Программирование на языке C++
  • Введение в язык C++
  • Как выполняются программы на C++
  • Структуры и классы
  • Объектно-ориентированное программирование
  • Дополнительные возможности C++
  • Шаблоны
Функциональное програм-мирование на языке Haskell
  • Введение
  • Основы программирования
  • Списки
  • Типы данных
  • Монады
Программирование на языке C++ 2
  • Продвинутые возможности C++
  • Нововведения стандартов 2011 и 2014 годов
  • Стандартная библиотека шаблонов
  • Обработка ошибок
  • Многопоточность, библиотеки и метапрограммирование

Преподаватели

Алексей Владыкин

Java-разработчик в компании OpenWay, преподаватель Computer Science центра.

Денис Москвин

Кандидат физико-математических наук. Доцент кафедры МИТ Академического университета, преподаватель Computer Science центра. Один из основателей и координаторов Санкт-Петербургской группы пользователей Haskell (SPbHUG).

Александр Смаль

Научный сотрудник лаборатории математической логики ПОМИ РАН. Преподаватель Академического университета и Computer Science центра.

Вступительный экзамен

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

Записаться на экзамен