Курс С++ для військових технологій

  • Online
  • Для початківців, Для досвідчених
  • C / C++
Навчальний центр: Robot Dreams
Формат:Курс
Мова викладання:Ukrainian
Тривалість навчання:40 занять
Початок курсу:31.03.2026
Вартість навчання:Уточнюйте

Навчитеся писати програми з реальними розрахунками: координати, вектори, балістика, покрокова симуляція руху. Опануєте структурування коду через функції, структури й стани роботи системи. Опануєте практику побудови каналів обміну даними на вбудованих системах: обмінюватися даними через мережу та апаратні інтерфейси, працювати з Raspberry Pi та ESP32.

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

Вступ до програмування та Military Tech

  • Зрозумієте роль C++ розробника на military-підприємстві
  • Дізнаєтеся принцип роботи компілятора C++
  • Навчитеся створювати робочу програму на C++ та вводити значення в консоль

Оператори та логіка

  • Зрозумієте, як реалізовувати умовну логіку обчислень на C++
  • Навчитеся робити розрахунки за формулами
  • Опануєте базову математику векторів та координат і навчитеся її реалізовувати

Цикли та масиви

  • Навчитеся використовувати цикли для покрокових обчислень
  • Дізнаєтесь, як зберігати й обробляти набори даних у масивах
  • Познайомитеся з принципами симуляції руху в часі та навчитеся їх реалізовувати

Функції

  • Опануєте використання функцій в C++
  • Дізнаєтесь, як писати модульний та перевикористовуваний код
  • Зрозумієте область видимості змінних та механізми передачі параметрів у функції

Основи структур даних та макроси

  • Розберете всі етапи роботи зі структурами та макросами
  • Навчитеся читати й писати дані у форматі JSON
  • Зрозумієте принципи організації даних у структури та керування вирівнюванням у пам'яті

Основи роботи з пам'яттю

  • Зможете розуміти вказівники та посилання
  • Дізнаєтесь, як керувати пам'яттю на базовому рівні
  • Побачите відмінності між стеком та купою і розберетеся, коли їх використовувати

Середовище розробки. VS Code, devcontainers, Linux, C++ тули

  • Опануєте роботу у VS Code з devcontainers
  • Вивчите базові Linux-команди
  • Почнете працювати над власним C++ проєктом із вбудованою якістю

Структура C++ проєктів та контроль версій коду. Git, GitHub, Pull Request

  • Зможете працювати з Git/GitHub на базовому рівні
  • Створите чіткий роадмап власного C++ проєкту
  • Навчитеся створювати PR на рев'ю

Від ручної компіляції до CMake: як збирається ваш код

  • Дізнаєтеся різницю між ручною компіляцією та CMake
  • Розберетесь, як збирати базовий CMake-проєкт
  • Навчитеся самостійно виправляти типові помилки збірки

Дебаг та діагностика помилок: GDB, core dumps, sanitizers, Valgrind

  • Опануєте принципи та послідовність діагностування падіння C++ застосунків
  • Розберете різницю між видами аналізу помилок
  • Дізнаєтесь, як налаштовувати дебаг у VS Code

Тестування C++ коду: Google Test

  • Навчитеся писати unit-тести
  • Зрозумієте роль тестів у надійності систем
  • Зможете інтегрувати GTest і проводити їхній запуск через CTest

Базова якість коду: форматування, статичний аналіз, правила проєкту

  • Зрозумієте, як підтримувати якість коду актуальними інструментами
  • Зможете готувати зміни, готові до рев'ю
  • Навчитеся налаштовувати та використовувати статичний аналіз коду (clang-tidy) та слідкувати за мінімальними "coding rules"

Вступ до ООП

  • Розберетесь у принципах ООП і проєктування
  • Навчитеся створювати та імплементувати інтерфейси
  • Зрозумієте та навчитеся застосовувати базові принципи наслідування

Класи

  • Опануєте роботу з класами на професійному рівні
  • Навчитеся правильно застосовувати патерни та складні числові прийоми
  • Навчитеся реалізовувати патерни "Фабрика" та "Стратегія"

Структура проєкту

  • Опануєте грамотне структурування C++ проєктів та зможете протестувати навички на власній роботі
  • Зрозумієте принцип роботи директив #include та #define
  • Навчитеся використовувати простори імен та попередні оголошення для зменшення залежностей

STL і складність алгоритмів

  • Опануєте використання STL-контейнерів стандартної бібліотеки
  • Розберетеся в методиках оцінки складності алгоритмів
  • Зрозумієте відмінності та переваги різних контейнерів STL

Керування ресурсами

  • Опануєте використання розумних вказівників
  • Зрозуміжте різницю між unique_ptr та shared_ptr
  • Навчитеся використовувати розумні вказівники для запобігання витокам пам'яті

Багатопотоковість

  • Навчитеся синхронізувати потоки й створювати воркери
  • Дізнаєтесь, як будувати асинхронні черги для розрахунків

Одноплатні комп'ютери як платформа

  • Зможете формулювати вимоги до цільової платформи
  • Навчитеся розуміти host/target і наслідки для збірки/тестування
  • Дізнаєтеся різницю між ARM і x86 та її роль у деплої

Огляд популярних систем

  • Розберетеся в одноплатних мікрокомп'ютерах і роботі з ними
  • Навчитеся розрізняти особливості та відмінності популярних SBC
  • Опануєте налаштування середовища для роботи з симуляторами одноплатних комп'ютерів

Hardware-інтерфейси

  • Зрозумієте, які hardware-інтерфейси має Raspberry Pi та як з ними працювати
  • Навчитеся працювати з пінами загального призначення (GPIO) для вводу/виводу
  • Опануєте принципи роботи інтерфейсів UART, SPI, I²C

Поглиблена робота з інтерфейсами

  • Навчитесь інтегрувати hardware-інтерфейси з C++ застосунку
  • Опануєте використання бібліотеки для програмної роботи з пінами
  • Зрозумієте, як виводити керуючий сигнал на GPIO пін

Docker runtime для C++ сервісів

  • Опануєте збірку та запуск контейнерів та навчитеся їх діагностувати
  • Розберетесь у self-test/healthcheck і volumes
  • Дізнаєтеся, коли та як застосовувати DinD без виходу з devcontainer

Docker Compose як system bring-up: запускаємо систему з 2-3 C++ сервісів

  • Навчитеся підіймати систему з кількох контейнерів однією командою
  • Зможете додавати базовий healthcheck і розуміти, що саме він перевіряє
  • Дізнаєтесь, як ресурсні ліміти (CPU/RAM) впливають на поведінку системи

ROS 2 основи: nodes/topics/pub-sub

  • Навчитеся писати ROS 2 ноду на C++ (publisher/subscriber)
  • Опануєте перевірку роботи через ros2 CLI

ROS 2 як система: services/launch/params

  • Розберетесь, як робити ROS 2 service сервер на C++ і викликати його клієнтом
  • Отримаєте загальну інформацію про те, як працює зорова система
  • Зможете запускати стек з кількох нод через launch і керувати параметрами через YAML
  • Навчитеся відокремлювати алгоритмічну логіку (C++ module) від ROS 2 комунікації

ROS 2 під капотом: DDS/RTPS, QoS

  • Зможете обирати QoS під задачу (телеметрія vs команди)
  • Зрозумієте, що варто перевіряти насамперед при drops/latency/невидимих топіках

Операційність: надійність, метрики, healthcheck, відтворюваність (replay/rosbag2)

  • Навчитеся додавати метрики та self-test для контролю працездатності
  • Опануєте практичну перевірку QoS і зрозумієте, як зміна QoS впливає на drops/latency та поведінку монітора

Протокол передачі даних

  • Зможете орієнтуватись у протоколах, що застосовуються в Defence Tech
  • Зрозумієте специфіку передачі даних, характерну для Defence Tech
  • Навчитеся обирати протокол передачі даних відповідно до вимог задачі

Інтернет-протоколи

  • Навчитеся налаштовувати комунікацію між пристроями в LAN
  • Зможете працювати з TCP/UDP на базовому рівні
  • Дізнаєтеся, як реалізовувати комунікацію через сокети

Протоколи локальної мережі дальньої дії

  • Зможете орієнтуватися в протоколах дальньої дії
  • Навчитеся налаштовувати комунікацію з C++ застосунку по CAN-шині
  • Зрозумієте призначення та принципи роботи протоколів Modbus та MIL-STD-1553

Протоколи ближньої дії + АЦП

  • Опануєте роботу з UART/I²C/SPI та навчитеся інтегрувати АЦП
  • Зрозумієте, як ховати імплементації за інтерфейсами

Mavlink

  • Зможете спілкуватися з політними контролерами
  • Зрозумієте структуру повідомлень Mavlink та механізм їхньої передачі

Стейт машини

  • Пройдете пайплайн роботи зі state machine
  • Навчитеся орієнтуватись у розповсюджених патернах проєктування в embedded програмуванні
  • Дізнаєтеся, як застосовувати принципи модульного програмування

Вступ до Embedded

  • Розберетесь у принципах роботи мікроконтролерів
  • Навчитеся налаштовувати середовище для ESP32
  • Зрозумієте, як обмежені ресурси (RAM, Flash) впливають на архітектуру програмного забезпечення

Периферія: GPIO і таймери

  • Зможете писати прошивки на ESP32
  • Опануєте програмування комунікацій ESP32 по CAN/I²C/SPI
  • Навчитеся використовувати таймери для періодичних завдань у мікроконтролері

Вступ до RTOS

  • Зрозумієте принципи роботи RTOS
  • Навчитеся працювати з поняттями "задача" та "планувальник" у контексті RTOS
  • Зрозумієте необхідність RTOS для систем реального часу

Поглиблене вивчення RTOS

  • Навчитеся створювати RTOS-архітектуру
  • Зможете налаштовувати систему реального часу відповідно до вимог
  • Опануєте специфічні для сфери задачі, використовуючи функціонал RTOS

Старт роботи над курсовим проєктом

  • Зможете формулювати та обґрунтовувати архітектуру комплексного Embedded C++ проєкту
  • Визначите вимоги до фінального проєкту та оберете релевантну тему з MilTech
  • Навчитеся планувати розробку проєкту

Захист фінальних проєктів

  • Зможете презентувати технічні рішення та результати своєї роботи
  • Навчитеся аналізувати власний код і надавати/отримувати конструктивний фідбек
  • Зрозумієте, як об'єднати знання з усіх блоків курсу для створення цілісного рішення

Особливості курсу

  • Допомога ментора
  • Практика на реальних кейсах
  • Курсовий проєкт
  • Кейс в портфоліо
  • Сертифікат про проходження курсу

Викладачі курсу

  • Євген Гаврилюк - Development Team Lead, Miltech company
  • Євген Кузнецов - Staff Software Engineer, Apex.AI

Категорії курсу

Читайте нас в Telegram, щоб не пропустити анонси нових курсів.

Схожі курси

Навчальний центр
Hillel IT school
Формат
Online
Початок навчання
26.02.2026
Тривалість
24 занять
Рівень
Для початківців
Мова навчання
Ukrainian
Вартість
11 400 UAH за курс
Навчальний центр
IT-школа СМАРТ
Формат
Online
Початок навчання
Дата формується
Тривалість
-
Рівень
Для дітей
Мова навчання
Ukrainian
Вартість
2 790 UAH за місяць

C++

Optima Academy
Навчальний центр
Optima Academy
Формат
Online
Початок навчання
Будь-який момент
Тривалість
3 місяців
Рівень
Для дітей
Мова навчання
Ukrainian
Вартість
2 400 UAH за місяць
Навчальний центр
Junior IT
Формат
Online
Початок навчання
Дата формується
Тривалість
-
Рівень
Для дітей
Мова навчання
Ukrainian
Вартість
уточнюйте