Разработчик на C++: функции, память и объектно-ориентированное программирование

Разработчик на C++: функции, память и объектно-ориентированное программирование Практический курс из 32 занятий для тех, кто уже знаком с переменными, вводом и выводом, условиями и циклами в C++. Вы научитесь разбивать программы на функции, работать со стандартными коллекциями, ссылками и указателями, создавать собственные классы и управлять памятью. Постепенно вы освоите инкапсуляцию, конструкторы и деструкторы, связи между объектами, наследование и полиморфизм. Объяснения сопровождаются программированием вместе с преподавателем, домашними заданиями и контрольной практикой. В конце курса вы разработаете собственное консольное приложение, объединив изученные приёмы. Продолжительность: 32 занятия по 40 минут. Целевая аудитория: подростки от 13 лет, студенты и взрослые с базовыми знаниями C++.
32урока
8модулей
Сертификатпо завершении

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

8 модулей, 32 урока

1Функции и передача данных5 уроков
  • Функции и декомпозиция программы
  • Параметры, ссылки и const-ссылки
  • Адреса и указатели
  • Массивы, строки и vector
  • Функции для работы с коллекциями
2Модуль 2. Коллекции и стандартные алгоритмы5 уроков
  • Полноценная работа со строками
  • Ассоциативные коллекции map и set
  • Stack, queue и выбор коллекции
  • Стандартные алгоритмы
  • Итераторы и контрольная практика по коллекциям
3Модуль 3. Подготовка к объектно-ориентированному программированию4 урока
  • Структуры и собственные типы данных
  • Перечисления enum class
  • Ограничения процедурного подхода
  • Объект, класс и абстракция
4Модуль 4. Классы и инкапсуляция6 уроков
  • Объект класс и абстракция
  • Методы и указатель this
  • Инкапсуляция: связанные данные хранятся вместе
  • Инкапсуляция: данные и поведение живут вместе
  • private, public и интерфейс класса
  • Поддержание корректного состояния объекта
5Модуль 5. Жизненный цикл объектов и управление памятью5 уроков
  • Конструкторы и начальное состояние объекта
  • Деструктор и область жизни объекта
  • Копирование объектов: value- и reference-семантика
  • Динамическая память: new, delete и типичные ошибки
  • RAII и умные указатели
6Модуль 6. Связи между объектами и проектирование3 урока
  • Композиция: объект состоит из других объектов
  • Агрегация, ассоциация и зависимость
  • UML-диаграмма классов и контрольное проектирование
7Модуль 7. Наследование и полиморфизм3 урока
  • Наследование как создание подтипа
  • Переопределение и полиморфизм
  • Абстрактные классы и общий интерфейс
8Модуль 8. Итоговый проект1 урок
  • Итоговый проект