Об этом курсе

Недавно просмотрено: 20,560

100% онлайн

Начните сейчас и учитесь по собственному графику.

Гибкие сроки

Назначьте сроки сдачи в соответствии со своим графиком.

Промежуточный уровень

Прибл. 52 часа на выполнение

Предполагаемая нагрузка: 9 hours/week...

Русский

Субтитры: Русский

Приобретаемые навыки

SanitizersC++17Protocol Buffers (PROTOBUF)C++ Standard LibraryUndefined Behavior

100% онлайн

Начните сейчас и учитесь по собственному графику.

Гибкие сроки

Назначьте сроки сдачи в соответствии со своим графиком.

Промежуточный уровень

Прибл. 52 часа на выполнение

Предполагаемая нагрузка: 9 hours/week...

Русский

Субтитры: Русский

Программа курса: что вы изучите

Неделя
1

Неделя 1

34 ч. на завершение

Неделя 1. Неопределённое поведение и инструменты поиска проблем

34 ч. на завершение
17 видео ((всего 151 мин.)), 15 материалов для самостоятельного изучения, 10 тестов
17 видео
Отладочные макроопределения12мин
Санитайзеры12мин
Введение в неопределённое поведение2мин
Онлайн сервисы11мин
Избавление от накладных расходов14мин
Выполнение оптимизаций11мин
Неожиданные последствия неопределённого поведения8мин
Идиоматический С++ и неопределённое поведение8мин
Идиоматический С++ и неопределённое поведение (продолжение)11мин
Инструменты для обнаружения неопределённого поведения11мин
Решение части E9мин
Решение части F14мин
Транспортный справочник, части G–I2мин
Решение части G8мин
Решение части H1мин
Решение части I7мин
15 материала для самостоятельного изучения
Где задать вопрос: telegram, forum10мин
Подробнее про дебажные дефайны15мин
Вердикты санитайзера30мин
Использование санитайзеров в других окружениях10мин
Решение задачи «Запрещённые домены» под санитайзером10мин
Решение задачи «Личный бюджет» под санитайзером10мин
Решение задачи «Транспортный справочник» под санитайзером15мин
Онлайн сервисы - ссылки1мин
Сложение без переполнения5мин
Символайзер к санитайзеру на Wandbox10мин
Решение части E
Решение части F20мин
Решение части G30мин
Решение части H30мин
Решение части I30мин
1 практическое упражнение
Неопределённое поведение20мин
Неделя
2

Неделя 2

16 ч. на завершение

Неделя 2. Сериализация и protobuf

16 ч. на завершение
9 видео ((всего 85 мин.)), 5 материалов для самостоятельного изучения, 6 тестов
9 видео
Бинарная сериализация11мин
Бинарный и текстовый режим потоков ввода/вывода11мин
Введение в protobuf4мин
Установка protobuf9мин
Синтаксис proto-файлов12мин
Сборка проектов, использующих protobuf13мин
C++ Protobuf API 111мин
C++ Protobuf API 29мин
5 материала для самостоятельного изучения
Решение задачи «JSON Printer»10мин
Решение задачи «Save & Load»10мин
Пример CMakeLists.txt для сборки проекта с protobuf10мин
Решение задачи «Телефонная книга»10мин
Решение задачи «Справочник организаций»10мин
2 практического упражнения
Бинарная сериализация20мин
Синтаксис proto320мин
Неделя
3

Неделя 3

33 ч. на завершение

Неделя 3. Хранение объектов в памяти и таблица виртуальных методов

33 ч. на завершение
17 видео ((всего 86 мин.)), 8 материалов для самостоятельного изучения, 9 тестов
17 видео
Выравнивание сложных объектов6мин
Выравнивание при наследовании4мин
Little Endian, Big Endian7мин
Плотная упаковка14мин
Виртуальные методы3мин
Указатель vpointer3мин
Таблица виртуальных методов3мин
Конструкторы и деструкторы5мин
Pure virtual3мин
Введение в разработку трансляторов4мин
Транспортный справочник, части J–M1мин
Транспортный справочник, часть J1мин
Транспортный справочник, часть K3мин
Транспортный справочник, часть L1мин
Транспортный справочник, часть M3мин
Решения частей J–M12мин
8 материала для самостоятельного изучения
Решение задачи «Нуклеотид: сжатие структуры данных»10мин
Интерпретатор языка Mython25мин
Решение задачи «Лексический анализатор языка Mython»10мин
Решение задачи «Интерпретатор языка Mython»
Решение части J30мин
Решение части K30мин
Решение части L30мин
Решение части M30мин
2 практического упражнения
Тесты на выравнивание памяти
Тесты на виртуальные функции
Неделя
4

Неделя 4

17 ч. на завершение

Неделя 4. Вектор своими руками

17 ч. на завершение
14 видео ((всего 114 мин.)), 8 материалов для самостоятельного изучения, 9 тестов
14 видео
Placement new7мин
Наивная реализация конструкторов и функции Reserve9мин
Обработка исключений6мин
Уносим сырую память в класс-обёртку8мин
Функции std::uninitialized_*5мин
Оператор присваивания и move-конструктор12мин
Resize, PushBack и PopBack6мин
Гарантии безопасности исключений9мин
Variadic templates8мин
Наивная реализация EmplaceBack5мин
Forwarding references11мин
Транспортный справочник, часть N2мин
Решение части N13мин
8 материала для самостоятельного изучения
Решение задачи SimpleVector из «Красного пояса»10мин
Решение задачи «Optional»10мин
Решение задачи «EqualsToOneOf»10мин
Решение задачи «Применить функтор к списку аргументов»10мин
Решение задачи «Вектор своими руками — 1»10мин
Решение задачи «Вектор своими руками — 2»10мин
Как работают std::move и std::forward10мин
Решение части N30мин
3 практического упражнения
Требования к стандартному вектору10мин
Реализация конструкторов и функции Reserve20мин
EmplaceBack20мин

Рецензии

Лучшие отзывы о курсе ОСНОВЫ РАЗРАБОТКИ НА С++: ЧЕРНЫЙ ПОЯС
Посмотреть все отзывы

от партнера

Логотип Московский физико-технический институт

Московский физико-технический институт

Логотип Яндекс

Яндекс

Логотип E-Learning Development Fund

E-Learning Development Fund

Специализация Искусство разработки на современном C++: общие сведения

В специализации преподаватели делятся своим многолетним опытом создания больших проектов на языке C++. Они не пересказывают учебник, а учат решать задачи, с которыми на практике сталкиваются большинство разработчиков. Лекции, подаваемые в лёгкой и доступной форме, подкрепляются большим количество задач по программированию. Закончив эту специализацию, вы сможете не только рассуждать о C++, сравнивая его с другими языками, но и получите реальный навык программирования....
Искусство разработки на современном C++

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

  • Зарегистрировавшись на сертификацию, вы получите доступ ко всем видео, тестам и заданиям по программированию (если они предусмотрены). Задания по взаимной оценке сокурсниками можно сдавать и проверять только после начала сессии. Если вы проходите курс без оплаты, некоторые задания могут быть недоступны.

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

Остались вопросы? Посетите Центр поддержки учащихся.