C++ Developer. Basic [2022]
Разработчик С++. Базовый курс [2022]
OTUS
Сергей Кольцов, Владимир Папков, Александр Ключев, Марат Сейфулин, Павел Филонов, Георгий Иванов, Иван Келарев, Михаил Лицарев
Освойте базовые навыки IT, необходимые C++ разработчику для успешного старта.
Вы освоите основы программирования на языке C++ и заложите фундамент из навыков, необходимых для профессиональной разработки.
С поддержкой персонального ментора вы сформируете четкое представление о разных областях, с которыми соприкасается разработчик C++.
Получите базовые навыки программирования на языке C++, которые пригодятся при прохождении собеседований и работе на позиции Junior C++ Programmer.
Сможете самостоятельно разрабатывать программы на языке C++ для решения бизнес-задач.
После обучения вы:
1. Заберете с собой материалы по всем занятиям (презентации, записи вебинаров, примеры практических задач);
изучите одну из главных возможностей языка C++ с точки зрения ООП — создание собственных типов и операций с ними;
2. Получите базовые навыки unit-тестирования своего кода на языке C++;
3. Познакомитесь со стандартной библиотекой и выработаете навыки ее использования;
4. А также научитесь использовать сторонние библиотеки;
Содержание
Модуль 1 - Введение в язык C++
Тема 1. Вводное занятие
Тема 2. Пишем свой “Hello, World”.
Тема 3. Базовый синтаксис языка C++
Тема 4. Такие разные функции
Тема 5. Модульность. Линковка
Тема 6. Подробнее о CMake
Тема 7. Ответы на вопросы
Модуль 2 - Классы и структуры
Тема 8. Структуры и классы
Тема 9. Полиморфизм и все-все-все
Тема 10. Шаблоны классов и функций
Тема 11. Тонкости (перегрузка операторов, конструкторы и деструкторы, move-семантика)
Модуль 3 - Основы unit-тестирования
Тема 12. Понятие unit-тестирования, цель, что тестируем
Тема 13. Инструменты для unit-тестирования. Библиотека Googletest
Модуль 4 - Стандартная библиотека и полезные алгоритмы
Тема 14. Общий обзор стандартной библиотеки
Тема 15. Подробнее о контейнерах и вводе-выводе
Тема 16. Алгоритмы, которые лучше знать лучше
Модуль 5 - Работа со сторонними библиотеками
Тема 17. Работа с библиотеками вручную
Тема 18. Современные средства автоматизации. Пакетные менеджеры, снова CMake
Тема 19. Сборка библиотек из исходников
Модуль 6 - Всё глубже и глубже. Тонкости
Тема 20. Семантика перемещения, noexcept, и как они нам помогают
Тема 21. Работа с динамической памятью
Тема 22. Исключения в C++. Использование и нюансы. Гарантии безопасности
Модуль 7 - Многопоточность в C++
Тема 23. Понятие потока выполнения программы
Тема 24. Две главные проблемы - гонка и взаимная блокировка
Тема 25. Структуры данных в многопоточной среде
Тема 26. Более высокие абстракции и асинхронное исполнение
Тема 27. Дополнительные тонкости и детали
Модуль 8 - Разное
Тема 28. Идиомы и полезные практики C++
Тема 29. Вводное занятие по проекту
Тема 30. Идиомы и полезные практики C++. Часть 2
Тема 31. Полезные в работе инструменты
Тема 32. Консультация