Курс C++ Junior Developer
C++ Junior Developer
Описание курса
Курс С++ JuniorDeveloper для всех, кто желает стать разработчиком на языке С++. Курс ориентирован на приобретение практических знаний, навыков и опыта, которые необходимы начинающим разработчикам на языке C++.Описание курса
Программа курса
Занятие 1. Введение в C++
Типы языков. История языка С++.
Универсальность языка. В чем она выражается?
Из чего состоит программа?
Стиль написания кода (codestyle). Общепринятые соглашения.
Почему CodeReview так важен?
Компиляторы и среды разработки (IDE)
Системы контроля версий.
Синтаксис языка и его основные конструкции
Как развиваться в правильном направлении и что начать читать?
Домашнее задание
Занятие 2. Выполнение программ на С++
Разбор домашнего задания
Процесс компиляции
Стек вызовов
Указатели и адресная арифметика.
Ссылки. Отличия ссылок от указателей.
Динамическая память (куча)
Одномерные и многомерные массивы данных.
Практика
Домашнее задание
Занятие 3. Структуры и классы
Разбор домашнего задания
Общее представление. Зачем все это нужно?
Методы классов.
Область видимости.
Понятие конструкторов и деструкторов.
Практика
Домашнее задание
Занятие 4. ООП в С++. Часть 1
Разбор домашнего задания
Полиморфизм. Наследование. Инкапсуляция. Что же это такое?
Перегрузка методов
Виртуальные функции и таблица виртуальных методов
Наследование в С++
Практика
Домашнее задание
Занятие 5. ООП в С++. Часть 2
Разбор домашнего задания
Перегрузка операторов.
Правила перегрузки.
Дружественные методы и классы
Практика
Домашнее задание.
Занятие 6. Шаблоны и метапрограммирование
Разбор домашнего задания
Для чего нужны шаблоны и как они работают?
Шаблоны функций
Шаблоны классов
Специализация шаблонов
Метапрограммирование
Практика
Домашнее задание
Занятие 7. STLв С++. Часть 1
Разбор домашнего задания
Основныеконтейнеры (std::vector, std::list, std::deque, std::stack, std::map, std::set, … ).
Когда надо использовать определенный тип контейнера и почему?
Анализ сложности операций при работе с контейнерами
Итераторы.
Строки в C++
Практика
Домашнее задание
Занятие 8. STLв С++. Часть 2
Разбор домашнего задания
Алгоритмы в STL
Разбор существующих алгоритмов
Написание собственных алгоритмов для работы с STL контейнерами
Контейнеры-адаптеры
Практика
Домашнее задание
Занятие 9. С++ 11. Возможности стандарта
Разбор домашнего задания
Нововведения, которые так упрощают жизнь! Откуда же они берутся?
Ключевое слово auto, лямбда-выражения, nullptr, range-based циклы и многое другое
Библиотека Boost
Практика
Домашнее задание
Занятие 10. Введение в Qt, QtCreator, QtCore, QtGui, Отладка
Разбор домашнего задания
Нововведения, которые так упрощают жизнь! Откуда же они берутся?
Ключевое слово auto, лямбда-выражения, nullptr, range-based циклы и многое другое
Библиотека Boost
Практика
Домашнее задание
Занятие 11. Продолжение работы с Qt
Разбор домашнего задания
Виды отладки: отладчик, трассировка (логгирование), модульные тесты, визуализаторы процесса выполнения
Практика: Доработка приложения
Вопросы на собеседовании
Типы языков. История языка С++.
Универсальность языка. В чем она выражается?
Из чего состоит программа?
Стиль написания кода (codestyle). Общепринятые соглашения.
Почему CodeReview так важен?
Компиляторы и среды разработки (IDE)
Системы контроля версий.
Синтаксис языка и его основные конструкции
Как развиваться в правильном направлении и что начать читать?
Домашнее задание
Занятие 2. Выполнение программ на С++
Разбор домашнего задания
Процесс компиляции
Стек вызовов
Указатели и адресная арифметика.
Ссылки. Отличия ссылок от указателей.
Динамическая память (куча)
Одномерные и многомерные массивы данных.
Практика
Домашнее задание
Занятие 3. Структуры и классы
Разбор домашнего задания
Общее представление. Зачем все это нужно?
Методы классов.
Область видимости.
Понятие конструкторов и деструкторов.
Практика
Домашнее задание
Занятие 4. ООП в С++. Часть 1
Разбор домашнего задания
Полиморфизм. Наследование. Инкапсуляция. Что же это такое?
Перегрузка методов
Виртуальные функции и таблица виртуальных методов
Наследование в С++
Практика
Домашнее задание
Занятие 5. ООП в С++. Часть 2
Разбор домашнего задания
Перегрузка операторов.
Правила перегрузки.
Дружественные методы и классы
Практика
Домашнее задание.
Занятие 6. Шаблоны и метапрограммирование
Разбор домашнего задания
Для чего нужны шаблоны и как они работают?
Шаблоны функций
Шаблоны классов
Специализация шаблонов
Метапрограммирование
Практика
Домашнее задание
Занятие 7. STLв С++. Часть 1
Разбор домашнего задания
Основныеконтейнеры (std::vector, std::list, std::deque, std::stack, std::map, std::set, … ).
Когда надо использовать определенный тип контейнера и почему?
Анализ сложности операций при работе с контейнерами
Итераторы.
Строки в C++
Практика
Домашнее задание
Занятие 8. STLв С++. Часть 2
Разбор домашнего задания
Алгоритмы в STL
Разбор существующих алгоритмов
Написание собственных алгоритмов для работы с STL контейнерами
Контейнеры-адаптеры
Практика
Домашнее задание
Занятие 9. С++ 11. Возможности стандарта
Разбор домашнего задания
Нововведения, которые так упрощают жизнь! Откуда же они берутся?
Ключевое слово auto, лямбда-выражения, nullptr, range-based циклы и многое другое
Библиотека Boost
Практика
Домашнее задание
Занятие 10. Введение в Qt, QtCreator, QtCore, QtGui, Отладка
Разбор домашнего задания
Нововведения, которые так упрощают жизнь! Откуда же они берутся?
Ключевое слово auto, лямбда-выражения, nullptr, range-based циклы и многое другое
Библиотека Boost
Практика
Домашнее задание
Занятие 11. Продолжение работы с Qt
Разбор домашнего задания
Виды отладки: отладчик, трассировка (логгирование), модульные тесты, визуализаторы процесса выполнения
Практика: Доработка приложения
Вопросы на собеседовании
Скрытое содержимое. Для просмотра необходимо: 10 сообщений.