Базовый курс C++

Старт обучения
Берестейская Дату уточните у администрации
Позняки Дату уточните у администрации
ВДНХ Дату уточните у администрации
36 час. по 2-3 раза в неделю

Описание курса

Курс состоит из 11 занятий общей длительностью в 36 академических часов. В курсе предусмотрено 11 лабораторных работ для самостоятельного усвоения материала. Основной задачей курса является обучение слушателей теоретическим основам объектно-ориентированного программирования, приемам разработки ПО, решения типичных задач программирования и разработки приложений на языке С++.

После курса вы сможете:

  • Разрабатывать ПО на языке C++
  • Выполнять математические расчеты, решать задачи и реализовывать типовые алгоритмы
  • Разрабатывать консольные приложения в операционной системе Linux

Вместе дешевле

Базовый курс C++
+
Продвинутый курс C++
=

13400 грн.

11400 грн.

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

  • Введение. Немного истории
    • Организация вычислительной системы
    • Организация памяти
    • Языки программирования
    • Машинные языки
    • Языки низкого уровня
    • Языки высокого уровня
    • трансляторы - компиляторы и интерпретаторы
    • Подходы к разработке ПО
    • Процедурный, модульное, структурное программирование
    • Объектно-ориентированный подход
    • Обобщенное программирование
    • Краткая история С / С ++
  • Состав языка
    • Алфавит
    • Основные составляющие языка
    • Идентификаторы
    • Ключевые слова
    • Комментарии
    • Пример простейшей программы на с ++
  • Введение в git
  • Переменные и базовые типы данных
    • Переменные
    • Целочисленные типы
    • типы с плавающей точкой
    • Логический тип
    • Символьный тип
    • Прежний тип void
    • Модификаторы типов «short», «long», «unsigned», «signed»
    • Константы
    • constexpr как разновидность констант
    • Объявления и инициализация переменных
    • Глобальные и локальные переменные
    • Приведение типов
  • Основные операции языка С ++
    • Операция присваивания
    • Арифметические операции
    • арифметические операции с присвоением
    • Логические операции
    • поразрядного операции
    • операции проверки равенства / неравенства
    • Инкремент, декремент
    • Условная операция
    • возвращено значение
    • Ассоциативность операций
    • Приоритет операций
  • Операторы языка C ++
    • Условный оператор «if else»
    • Тернарный оператор
    • Оператор выбора switch
    • Операторы циклов «for»,«while»,«do while»
    • Операторы «goto», «break», «continue»
    • Пустой оператор
    • Оператор вызова функции
    • Оператор «sizeof»
  • Компиляция кода
    • Виды компиляторов С ++
    • Компиляция с помощью командной строки (CLI)
    • CMake как система автогенерации систем автоматической сборки кода
  • GDB как общий инструмент отладки (Debug) программы
  • функции
    • Понятие функции в С++
    • Оператор return
    • Параметры функции
    • Формальные и фактические параметры
    • Передача параметров по ссылке и по значению
    • Рекурсивные функции
    • Шаблоны функций
    • Перезагрузка функций
    • Лямбда функции и
    • constexpr как часть интерфейсу функции
  • Расширение компиляторов (GCC)
  • форматированный ввода / вывода
    • Функции ввода / вывода
    • Управляющие последовательности символов
    • Структура программы на языке С ++
    • Директивы препроцессора
    • Подключение внешних модулей
    • Порядок компиляции
    • Область видимости определений
    • Макроопределение
    • Функции
    • Функция «main»
    • Тип функции «main»
    • Аргументы командной строки
  • массивы и указатели
    • Понятие массива
    • Работа с массивами
    • Одномерные и многомерные массивы
    • Указатели
    • Работа с динамической памятью
    • Операции с указателями
    • Массивы указателей
    • Адресная арифметика
    • Операции с указателями
  • Пользовательские типы данных
    • Структуры (struct)
    • Перечисление (enum)
    • Объединения (union)
    • Работа со структурным типом
    • Доступ к полям
  • Динамическая память
    • Работа с динамической памятью
    • Методы работы с динамической памятью
    • Операции «new» и «delete»
    • Динамические структуры данных
    • Список
    • Двусвязные и односвязные списки
    • Очередь
    • Стек
  • Введение в объектно-ориентированное программирование
    • объектно-ориентированный подход к разработке программного обеспечения
    • объектно-ориентированный анализ и проектирование
    • Принцип и ООП
  • Объектно-ориентированное программирование на языке С ++
    • Понятие класса и объекта
    • Поля и методы класса
    • модификаторы доступа
    • Конструкторы и деструкторы
    • Создание экземпляра объекта
    • Динамические и статические объекты
    • Инициализация, присваивание и уничтожение объекта
    • копируя конструктор и указатель «this»
  • Принципы ООП
    • Инкапсуляция
    • Наследование
    • Полиморфизм
    • Реализация принципов ООП на языке С ++
  • Шаблоны (паттерны) проектирования
    • Паттерн проектирования «Singleton»
  • наследование
    • Наследование классов
    • Множественное наследование
    • Защищенное наследования
    • Закрытое наследование
    • Открытие доступа к отдельным членам класса
    • Композиция объектов
    • Область видимости при наследовании
  • Полиморфизм
    • Реализация полиморфизма
    • Виртуальные функции
  • Абстрактные классы и интерфейсы
    • Понятие интерфейса
    • Наследование интерфейсов
    • Понятие пространства имен
  • Перегрузка методов и операторов
    • Переопределение и перегрузки методов класса
    • Перегрузка операторов
    • Дружеские методы
    • Паттерн проектирования «Прототип»
  • Шаблоны типов
    • шаблонные функции
    • шаблонные классы
    • Работа с шаблонами
    • Параметрические типы
  • Обработка исключений
    • Исключительные ситуации и работа с ними
    • Блоки «try catch»
    • Генерация исключения «throw»
    • Наладочный макрос «_ASSERT»
  • Потоковый ввод / вывод
    • Классы ввода / вывода данных
    • Потоки данных
    • Ввод / вывод
    • Бинарные и текстовые файлы
    • Создание, чтение, запись файлов
  • Знакомство с типами межпроцессорного взаимодействия
  • Сетевая взаимодействие
    • Основы Socket API
    • Установление соединение
    • Передача данных
  • Основы работы с графикой OpenGL
  • проектирование программного обеспечения
    • проектирование классов
    • проектирование библиотек
    • Шаблоны (паттерны) проектирования
  • Отношения между классами
    • Ассоциация
    • Агрегация
    • Композиция
    • Наследование
    • Формы наследования

Минимальные требования:

  • Наличие собственного ноутбука для занятий в аудиториях
  • Знание основ теории программирования

* Примечание: указанные скидки не суммируются с другими действующими акциями и специальными предложениями. Скидка применяется только к новым заявкам и при условии полной оплаты. Если у Вас возникли вопросы, обращайтесь за консультацией к нашим менеджерам!

spinner-it