Сложность
Сложность
Продвинутый
Тип обучения
Тип обучения
Курс
Формат обучения
Формат обучения
С проверкой домашнего задания
Трудоустройство
Трудоустройство
Содействие
Сертификат
Сертификат
Да

Стоимость курса

126 000 ₽
есть рассрочка
  •  Научитесь писать эффективный код
  •  Разберётесь в стандартной библиотеке C++
  •  Начнёте работать с Git, IDE и компиляторами
  •  Познакомитесь с базовыми алгоритмами
    и структурами данных
  •  Создадите действующие сервисы и добавите 8+ проектов в портфолио
  •  Сможете начать карьеру с поддержкой наших специалистов

Будете учить только то, что точно пригодится в работе
С++ — сложный язык для сложных систем: беспилотных автомобилей и робототехники, веб-браузеров, микроконтроллеров, серверов и видеоигр. Курс непростой, но освоить его могут даже новички, если уделять обучению достаточно времени и усилий.

Курс подойдёт вам, если

  • Вы никогда не программировали и хотите начать с языка С++
  • Вы начинаете не с нуля и хотите освоить C++ для карьерного роста
  • Вы с опытом, но хотите выучить новый язык и сменить работу
  • Вам не хватает крепкой базы программирования

 

Что вы получите после обучения

Приобретаемые навыки
1
C++
4
PROTOBUF
5
Алгоритмы
6
Обработка фото
7
Юнит-тесты
8
Библиотеки
9
CMake
10
STL
11
Эффективность кода
12
Масштабируемость
13
Создание диаграмм UML
14
ANTLR
15
Дебагинг
16
Санитайзеры
17
Сериализация
18
Интерпретаторы

Вас будут обучать

Инженер-разработчик в Bercut и менеджер наставников в Практикуме. 6 лет в программировании.

Старший инженер по разработке электроники, начинающий embedded-разработчик и наставник в Практикуме.


Инженер-программист в РИМР и наставник в Практикуме.

Образовательная организация

Яндекс Практикум — сервис онлайн-обучения, где каждый может освоить цифровую профессию с нуля или получить новые навыки для дальнейшего профессионального развития.

Яндекс Практикум готовит специалистов по 5 направлениям: анализ данных, программирование, дизайн, маркетинг, менеджмент.

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

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

Преимущества:

Обучение основано на реальных ситуациях. Все задачи, которые вы будете выполнять, взяты из реальной рабочей практики. Оттуда же все инструменты: редакторы кода или Figma. С первых дней вы будете готовиться к своей будущей работе.
69% выпускников Практикума находят работу. В этом им помогает особый этап курса — карьерный трек. На нём со студентами работают наши HR-специалисты. Они учат студентов планировать процесс поиска работы, правильно составлять резюме, не теряться на собеседованиях и проходить тестовые задания. Читать исследование НИУ ВШЭ
Технологии помогают сделать так, чтобы каждому было удобно учиться. Теория — в учебнике с интерактивными элементами, задачи — в тренажёре.
Обратная связь. Еженедельные созвоны с наставниками и подробный письменный разбор выполненных заданий от ревьюера. Кураторы регулярно собирают обратную связь, чтобы в группе было комфортно и не страшно обратиться за помощью.
Возможность оплаты курса в рассрочку. 

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

Программа курса «Разработчик C++»

Вы можете выбрать между базовой и расширенной программой: освоить только самое необходимое junior разработчику или получить больше навыков, расширить резюме и быстрее вырасти до уровня middle. Мы регулярно обновляем материалы — вы учите только то, что точно пригодится на практике.
 
Бесплатный опциональный модуль10 часовБазовые понятия программирования

Вы узнаете об основах программирования и научитесь писать простые программы на C++
Знакомство с С++
Переменные и ввод
Условные конструкции, цикл for
Функции
Этот модуль необязательный для прохождения, но он поможет вам познакомиться с нашим форматом обучения
 

1 модуль 20 часов

Введение в C++

Вы познакомитесь с основными возможностями языка С++ и напишете на нём более 25 программ.

Спринт 0. Основы C++.

• Числа и строки. Операции над ними. Ввод и вывод
• Условие и циклы
• V — значит вектор
• Функции
• Контейнер set
• Глубокое копирование, ссылки и константность
• Контейнер map
• Git
Проект «Поисковый сервер»
Создадите основу для собственной поисковой системы.
 
2 модуль120 часов

Базовые понятия языка С++ и его стандартной библиотеки

Вы освоите понятия, важные для полноценной разработки на С++:

• итераторы — чтобы работать со всеми стандартными алгоритмами,
• конструкторы — чтобы создавать объекты стало проще,
• шаблоны функций — чтобы писать универсальный код.

А еще научитесь обращаться со сложными программами: разбивать код на несколько файлов и тестировать его.

Спринт 1. Изучаем базовые алгоритмы, структуры и классы данных. Погружаемся в детали и избегаем дублирования кода.

• Простые алгоритмы
• Структуры и классы
• Лямбда-функции

Спринт 2. Подробнее знакомимся с целочисленными типами С++, а также с кортежами и шаблонами функций. Узнаем, насколько самоотверженно C++ экономит ресурсы, и учимся избегать связанных с этим ошибок.

• Работа со средой Visual Studio Code
• Числовые типы
• Пары и кортежи
• Шаблоны функций
• Видимость и инициализация переменных

Спринт 3. Тестируем код и осваиваем мощь и гибкость классов.

• Введение в тестирование
• Инструменты тестирования и отладки
• Жизненный цикл объекта
• Перегрузка операторов
• Обработка ошибок. Исключения

Спринт 4. Разбиваем код на несколько файлов и углубляем знания о стандартных алгоритмах.

• Итераторы
• Алгоритмы поиска
• Стек, очередь, дек
• Распределение кода по файлам
Проект «Поисковый сервер»
Сделаете код объектно-ориентированным, напишете фреймворк для юнит-тестов, разделите код на файлы.
 
3 модуль130 часов

Производительность и оптимизация

Вы научитесь оценивать эффективность высокопроизводительного приложения до и после его разработки. Изучите работу с файлами и регулярными выражениями. Познакомитесь с внутренним устройством контейнеров. Это позволит понять, как настраивать элементы языка на эффективную работу. Чтобы избегать лишних копирований в коде, освоите move-семантику.

Спринт 5. Работаем над скоростью кода и с файлами.
• Профилируем и ускоряем
• Потоковые хитрости
• Просто о сложности. Теория быстродействия
• Работа с файлами

Спринт 6. Учимся управлять памятью.

• Модель памяти в C++
• Односвязный список

Спринт 7. Постигаем внутреннее устройство контейнеров и осваиваем семантику перемещения.

• Эффективные линейные контейнеры
• Семантика перемещения
Проект «Свой препроцессор»
Вы самостоятельно реализуете часть C++, а именно препроцессор, который проходит исходный код до компилятора и обрабатывает директивы.
Проект «Односвязный список»
Вы создадите собственную версию односвязного списка — контейнера, поддерживающего эффективное добавление и удаление элементов.
Проект «Простой вектор»
Вы напишете собственную версию вектора — контейнера, который обеспечивает эффективный доступ к элементам.
 
4 модуль120 часов

Качество кода

Вы изучите инструменты, которые делают код опрятным и защищают его от человеческих ошибок: пространство имён, константность, RAII. Узнаете, как избавить программу от проблем роста. Освоите динамический полиморфизм.

Спринт 8. Изучаем ассоциацивные контейнеры и пространства имён.

• Ассоциативные контейнеры
• Имена и пространства имён

Спринт 9. Упрощаем код благодаря умным указателям и разбираемся в концепции Undefined Behavior.

• Умные указатели
• Undefined Behavior

Спринт 10. Продолжаем упрощать код с помощью наследования и полиморфизма.

• Наследование и полиморфизм

Спринт 11. Осваиваем практики проектирования программ.

• Константность как элемент проектирования программ
• Идиома RAII

Спринт 12. Достигаем элегантности кода.

• Философия хороших функций
• Передаём данные в функцию
• Получаем данные из функции
• Рефакторинг
Проект «Транспортный справочник»
Напишете программу, позволяющую строить автобусные маршруты в городе.
 
5 модуль140 часов

Проектирование сложных программ

Вы напишете полноценный вектор, познакомитесь с variadic templates и гарантиями безопасности исключений.

Спринт 13. Пробуем себя в роли разработчиков библиотек и рассматриваем размещение объектов в памяти.

• Vector своими руками
• Хранение объектов в памяти

Спринт 14. Смотрим изнутри, как работает полиморфизм, изучаем популярную систему сборки CMake, учимся пользоваться сторонними библиотеками и пишем свои.

• Таблица виртуальных методов
• Собираем по-новому. CMake
Проект «Контейнер vector»
Разработаете вектор, который автоматически увеличивает свой размер, эффективно работает с памятью и не копирует объекты зря.
Проект «Транспортный справочник»
Разделите транспортный справочник на две программы: одна строит базы данных, другая обрабатывает запросы.
 
6 модуль40 часов

Проект «Электронная таблица»

Вы закрепите навыки написания понятного и масштабируемого кода: разработаете крупную программу, которую сможете развивать в будущем.

Спринт 15. Дипломный проект
Дипломный проект «Электронная таблица»
Дипломный проект «Электронная таблица»
Сначала вы защитите дизайн-проект таблицы с ячейками и формулами, затем напишете код.
 
7 модуль148 часов (только в расширенном курсе)

С++ для бэкенда

После основной программы вы можете освоить дополнительную специализацию, чтобы использовать C++ для разработки на бэкенде.
За 3 месяца вы:
• Разработаете программное обеспечение под Linux.
• Получите навык нагрузочного тестирования.
• Научитесь работать с Docker и СУБД PostgreSQL.
• Расширите свои знания о библиотеках разработки на С++ и используете в проекте boost::asio и boost::beast.
Проект «Игра в курьера»
Напишете код для бэкенда небольшой игры. В ней игроки-курьеры соревнуются, кто оптимальнее пройдёт по лабиринту улиц и доставит максимальное количество заказов.

Рейтинг курса

4.8
рейтинг
1
1
0
0
1

Отзывы о курсе

3 отзыва
по рейтингу по дате
K
kudryashovda

Зачет!

Хотел бы поделиться своими наблюдениями о курсе «Разработчик С++». Курс стартовал 4 недели назад, плюс до этого - целый месяц потратил на решение задач бесплатной части курса. Сразу поясню - команда курса постоянно собирает обратную связь со студентов - сначала путем заполнения анонимных форм, а сейчас - путем конкурса отзывов. За отзыв по теме конкурса была обещана пачка кофе :) А иначе как еще з...
K
kirill mayer

Хочешь сделать хорошо - делай сам

Достоинства: лекторы материал Недостатки: тренажер общий_случай Прохожу курс "Разработчик С++" на платформе яндекс практики уже несколько месяцев. Первое впечатление было ужасным. Бесплатная часть курса по основам языка давалась с "бомбежом" даже имея 10 лет практики программирования. Особенно когда результат тестов на мой код был единственной строчкой вида "Неправильно обрабатывается общий...
1
1Vlad1-

Полная некомпетентность процессе образования...

Достоинства: Благодаря наличию бесплатного раздела обучения есть возможность понять что он из себя представляет. Недостатки: Не пригодная для обучения методика Повелся на вездесущую рекламу этого практикума и решил попробовать бесплатный вводный курс разработчика С++. Профессиональным программистом я не являюсь, но данный язык мне очень хорошо знаком. Прошел примерно 15% от объема бесплатно...

Может быть интересно

обновлено 18.04.2024 08:02
Курс «Разработчик C++»

Курс «Разработчик C++»

Оставить отзыв
Поделиться курсом с друзьями