Курс Основи програмування на C++ у Дніпрі від основ програмування до стандарту C++ 17

[Основи програмування на C++]

Курс орієнтований на починаючих IT-фахівців в області програмування, які ставлять перед собою мету навчитися основам використання мови розробки програмного забезпечення C++. Курс є базовим та не вимагає попереднього досвіду в програмуванні. Знання та навички з програмування в рамках шкільної/інститутської програми вітається, але не є обов’язковими.


Курс триває 4 місяці (64 години)
Заняття 2 рази на тиждень (по 2 години)
Заняття у вечерній час та/або по вихідних
Внесок 2400 грн. на місяць
По завершенню курса міжнародний сертифікат *
В группі 8-12 студентів
Найближчий старт 18 жовтня 2019
Місце проведення - навчальний центр ОРТ Дніпро
Можливо отримати Грант на навчання

Відгуки про курс

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

  • Модуль 1: Введення в C++
    • Що таке програмування?
    • Огляд мови C++;
    • Вихідний код, компілятор і компонувальник. Як отримати робоче додаток з тексту?
    • Інтегроване середовище розробки (IDE). Установка Visual Studio 2017 Community;
    • Перша програма на C++.
  • Модуль 2: Дані та оператори
    • Літерали і змінні;
    • Константи. Різниця #define і const;
    • Введення в rvalue і lvalue (C ++ 17);
    • Типи даних. Числа, символи і рядки;
    • Спеціальний тип auto (C ++ 17);
    • Оператори і операнди. Побудова виразів;
    • Види операторів: унарні, бінарні і тернарние;
    • Оператор присвоювання;
    • Арифметичні оператори;
    • Оператори складеного присвоювання;
    • Оператори порівняння;
    • Логічні оператори. Заперечення, диз’юнкція, кон’юнкція;
    • Область видимості змінних: локальні і «глобальні» змінні;
    • Введення і виведення даних в консолі.
  • Модуль 3: Керуючі конструкції
    • Побудова неповних розгалужень. Умовний оператор if;
    • Побудова повних розгалужень. Умовний оператор if..else;
    • Каскадування условніх операторів if..else if;
    • Вкладені умови;
    • тернарного оператор;
    • Оператор множинного вибору switch;
    • Побудова циклічних алгоритмів;
    • Цикл з передумовою while;
    • Цикл з умовою поста do..while;
    • Цикл з лічильником for.
  • Модуль 4: Структури і перерахування
    • Створення призначених для користувача складних типів даних;
    • Відмінність вбудованих типів від призначених для користувача, простих від складних;
    • Створення структур, ключове слово struct;
    • Робота зі структурами: поля структур, значення за умовчанням (C++ 17) і вкладені структури;
    • Перерахування і перераховуються класи (C++ 17).
  • Модуль 5: Функції
    • Функції — оголошення, визначення і виклик;
    • Область видимості змінних;
    • Аргументи функції і передача значень;
    • Передача констант і структур в аргументи функції;
    • Повернення значення з функції за допомогою return;
    • Структурні змінні в якості значення, що повертається;
    • Передача аргументів за посиланням; перевагу і недоліки використання передачі по посиланнях;
    • Чому слід надавати перевагу передачу константою посилання замість звичайного посилання?
    • Перевантаження функцій; поліморфізм часу компіляції;
    • Аргументи за замовчуванням;
    • Рекурсія;
    • Вбудовувані функції;
    • Повернення значення за посиланням.
  • Модуль 6: Масиви і рядки
    • Що таке масиви і навіщо вони потрібні?
    • Визначення та доступ до елементів масиву;
    • Алгоритми для обробки значень масивів;
    • Багатовимірні масиви;
    • Передача масивів в аргументи функції;
    • Масиви структур;
    • Віддавайте перевагу клас std :: array вбудованим масивів в стилі мови C;
    • Рядки в стилі C — рядок як масив символів char;
    • Клас std :: string для роботи з рядками.
  • Модуль 7: Основи ООП
    • Що таке об’єктно-орієнтоване програмування?
    • Моделювання класів і створення об’єктів на основі побудованих моделей;
    • Клас як складний для користувача тип даних;
    • Інкапсуляція: public, protected і private області видимості;
    • Конструктори і деструктори;
    • Геттера і сеттери;
    • Передача об’єктів в якості аргументів функції (методу);
    • Статичні поля і методи класу;
    • Константні методи і класи;
    • Які функції клас генерує за замовчуванням і як цьому запобігти?
    • Ключові слова explicit і mutable;
  • Модуль 8: Перевантаження операцій
    • Що таке перевантаження операцій в структурах і класах?
    • Перевантаження унарних операцій;
    • Перевантаження бінарних операцій;
    • Перетворення типів;
  • Модуль 9: Спадкування
    • Базові та похідні класи;
    • Спадкування і конструктори;
    • Віртуальні функції;
    • Абстрактні класи та чисто віртуальні функції;
    • Необхідність визначення віртуальних деструкторів;
    • Public, protected і private спадкування;
    • Чому слід завжди використовувати область видимості private;
    • Множинне успадкування: всі за і проти;
    • Композиція класів;
    • Паттерни проектування;
  • Модуль 10: Покажчики
    • Адресація змінних в пам’яті і поняття покажчика;
    • Управління пам’яттю: операції new і delete;
    • Покажчик на змінні і на void;
    • Покажчик на масиви;
    • Константні покажчики; покажчики на константу і константні покажчики на константу;
    • Покажчики та функції;
    • Покажчики та об’єкти;
    • Масив покажчиків;
    • Покажчики на покажчики;
    • Реалізація структури даних stack з використанням покажчиків;
    • Реалізація структури даних зв’язковий список з використанням покажчиків;
    • Проблема витоку пам’яті; розумні покажчики.
  • Модуль 11: Поліморфізм, шаблони і виключення
    • Поліморфізм часу виконання з використанням покажчиків і віртуальних функцій;
    • Дружні функції;
    • Шаблони функцій і класів;
    • Виведення типів в шаблонах;
    • Навіщо потрібні виключення;
    • Генерація винятків (throw) і перехоплення в блоці try..catch;
    • Ключове слово noexcept;
    • Простору імен та многофайловий програми.
  • Модуль 12: STL
    • Що таке бібліотека STL і навіщо вона потрібна?
    • Алгоритми;
    • Контейнери — vector, list, deque, map;
    • Ітератори;
    • Функціональні об’єкти і предикати;
  • Модуль 13: Потоки і файли
    • Потокові класи
    • Класи ios, istream і ostream;
    • Помилки потоків;
    • Потоковий введення і виведення файлів;
    • Покажчики файлів;
    • Перевантаження операторів вилучення і вставки.
  • Модуль 14: Сучасний C ++ (C ++ 11, C ++ 14, C ++ 17)
    • Універсальна ініціалізація змінних;
    • using замість typedef;
    • Ключове слово override для методів;
    • Використання constexpr
    • Семантика переміщень і rvalue-посилання;
    • Лямбда-вирази;
    • Вивчайте сучасні можливості C ++.
  • Модуль 15: Розробка ПО
    • Проектування і структура програми;
    • Вибір технології та бібліотек;
    • Написання програми.

Наші студенти та випускники

* Навчальний центр залишає за собою право видавати сертифікат тим студентам, які протягом курсу виконували зобов'язання по регулярного відвідання і виконання контрольних робіт.

** Навчальний центр залишає за собою право вносити зміни в програму курсу.