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

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

55 000 ₽
есть рассрочка

Курс "C++ разработчик. Старт" - базовый курс C++ для начинающих, рассчитанный на обучение с нуля, подходящий всем, кто не знаком с программированием. Курс является достаточно полным введением в профессию C++ разработчик, и охватывает, как основы самого языка, так и стек технологий, с которыми работает разработчик.Участники курса получат необходимые знания и навыки для старта в профессию Программист C++/ С++ разработчик. Данный курс не затрагивает метапрограммирование и функциональное программирование на языке С++ По завершению курса у участников будут знания и умения для того, что бы разработать программу практически любой сложности на языке С++ начиная от идеи и заканчивая реализацией.

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

Сертификат, ссылками на который можно делиться с другими людьми

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

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

Введение. Программа. IDE

  > Краткая история С++
  > Назначения языка программирования
  > Компиляторы, интерпретаторы, линковщики  
  > Знакомство с IDE
  > Структура программы на языке С++
  > Полезная литература
  > Практика: Установка IDE  / Пишем 1-ю программу на С++
  > Домашнее задание

GitHub. Основы синтаксиса языка

  > Системы контроля версий
  > Review кода
  > Системы счисления
  > Представление   информации   в   компьютере
  > Базовые типы данных
  > Переменные
  > Операции
  > Выражения
  > Практика: Регистрация на GitHub / Выкладывание кода в gerrit /Написание программ, выполняющих операции ветвления
  > Домашнее задание

Отладка программ. Основы С/С++ (продолжение)

  > Отладка программ, gdb
  > Преобразование типов
  > Условные операторы
  > Циклы
  > Блок операторов
  > Практика: Написание программ вычисления математических рядов
  > Домашнее задание

Функции. Рекурсия. Ввод / вывод

  > Функции
  > Рекурсия
  > Функции ввода и вывода данных
  > Практика: Написание функций, выполняющих логические операции и вычисления математических рядов / Написание программы «Ханойские башни», решение через рекурсию
  > Домашнее задание

Введение в тестирование. Указатели. Массивы. Строки

  > Введение в тестирование
  > Модульное тестирование Gtest
  > Указатели. Операции работы с указателями
  > Массивы
  > Строки
  > Практика: Установка и наладка Gtest / Написание программ преобразования матриц / Написание программ преобразования строк
  > Домашнее задание

Динамическое выделение памяти. Структуры данных

  > Динамическое выделение памяти.
  > Перечисления, Объединения, Битовые
  > Структуры данных
  > Работа с файлами
  > Практика: Разработка программы работы с фалами и записью и чтением данных - «База данных»
  > Домашнее задание

Контрольная работа №1

Препроцессор. GNU make

  > Препроцессор, макросы
  > GNU make
  > Практика: Сборка программы «База данных» для разных операционных систем
  > Домашнее задание

Алгоритмы и структуры данных. Основы

  > Сложность алгоритмов
  > Сортировка
  > Поиск
  > Структуры данных
  > Практика: Реализация вектора на языке Си / Реализация дерева на языке Си.
  > Домашнее задание 

Ссылки. Основы ООП

  > Ссылки
  > Понятие ООП
  > Понятие класса
  > Спецификаторы доступа
  > Конструкторы, деструкторы
  > Практика: Реализация списка на языке Си. / Реализация очереди на языке Си.
  > Домашнее задание 

ООП (продолжение)

  > Методы класса
  > Операторы класса
  > Move семантика
  > Практика: Реализация строки на языке С++
  > Домашнее задание 

Защита промежуточного проекта

  > Ссылки. Конструкторы
  > Универсальные ссылки
  > Наследование
  > Виртуальные функции
  > Интерфейсы
  > Наследование конструкторов
  > Практика:
     ~ Уход от зависимостей от реализации, на зависимости от интерфейсов

Динамическое выделение памяти. Умные указатели

  > Динамическое выделение памяти
  > Умные указатели
  > Методы работы с умными указателями
  > Практика:
     ~ Реализация фабрики

Функциональные объекты. Лямбда-выражения. Стандартные алгоритмы

  > constexpt
  > Функциональные объекты
  > Лямбда выражения
  > Стандартные алгоритмы
     ~ std::find…
     ~ std::copy…
     ~ std::sort
     ~ std::binary_search..
     ~ std::equal
  > Практика:
     ~ Задачи на уменьшение асимптотической сложности при помощи сортировки и поиска

Стандартные контейнеры

  > Стандартные контейнеры
     ~ std::vector
     ~ std::list
     ~ std::forward_list
     ~ std::array
     ~ std::deque
     ~ std::set
     ~ std::map
     ~ std::multiset
     ~ std::multimap
     ~ std::unordered_set
     ~ std::unordered_map
     ~ std::unordered_multiset
     ~ std::unordered_multimap
     ~ std::stack
     ~ std::queue
     ~ std::priority_queue
  > Стандартные итераторы
  > Практика:
     ~ Задачи на уменьшение асимптотической сложности при помощи стандаартных контейнеров

Контрольная работа №2

Исключения

  > Исключения
  > Безопасность исключений
  > Пространства имен
  > Практика: 
     ~ Разбор примеров генерации исключений в самых неожиданных местах
     ~ Примеры реализации функций не генерирующих исключения

Потоки

  > Потоки
  > Примитивы синхронизации
  > Атомарные переменные
  > Future/promise
  > Практика: 
     ~ Реализация задачи нахождения БПФ с использованием параллельного программирования
     ~ Реализация очереди сообщений

Работа с файлами

  > Работа с файлами
  > Работа с файловой системой
  > Строки
  > Потоки строк
  > Практика:
     ~ Работа с файлами настроек
     ~ Реализация простейшей БД хранящей данные в текстовом формате

Шаблоны проектирования

  > Идиомы и паттерны проектирования
  > Распространенные идиомы
  > Практика:
     ~ Реализация COW строки
     ~ Реализация идиомы Pimpl

Работа над курсовыми проектами

Сдача курсовых проектов. Итоги

  > Сдача курсового проекта
  > Подведение итогов
  > Куда двигаться дальше?

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

2.7
рейтинг
0
0
0
0
0

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

обновлено 25.10.2024 09:04
С++ разработчик (Старт)

С++ разработчик (Старт)

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