ЗАЛИШ СВОЇ ДАНІ
і ми зв'яжемось з тобою найближчим часом!

Базовий курс C++ у Харкові

Знайомство з принципами програмування і особливостями
C++ розробки на практичних прикладах
Старт навчання
16 занять
02.07.2020
6100 грн
3700 грн
КОЛИ
СКІЛЬКИ
ЦІНА
2-3 рази на тиждень
з 19:00 до 22:00
C++ base
Можлива
оплата частинами
У зв'язку з карантином всі наші курси читаються у ONLINE-форматі. Діє знижка 40%. Записуйся!
Close

КОМУ БУДЕ КОРИСНИЙ КУРС

1
Новачкам
які не мають досвіду в IT, але хочуть отримати професію з цікавими завданнями і високим доходом
2
IT-фахівцям
бажаючим розширити свій стек технологій і попрацювати над новими проектами
3
Самоучкам
яким потрібні курси C++ для систематизації власних знань

ЩО ТИ ЗМОЖЕШ ПІСЛЯ НАВЧАННЯ

1
Розуміти, як влаштовано C++, та писати чистий код без помилок
2
Розробляти ПЗ на мові C ++
3
Створювати консольні додатки в операційній системі Linux

ПРОГРАМА НАВЧАННЯ

Трохи історії
  • Що таке мова програмування
  • Машинні мови
  • Низькорівневі мови (мова асемблера)
  • Високорівневі мови
  • Транслятори
  • Компіляція
  • Інтерпретація
  • Парадигми програмування
  • Модульна парадигма програмування
  • Функціональна парадигма програмування
  • Узагальнена парадигма програмування
  • Об'єктно-орієнтована парадигма програмування
  • Історія С ++
Основи GIT-системи контролю версії
  • Що таке система контролю версії і що вона вирішує
  • Основні елементи git
  • Що таке комміт
  • Що таке гілка
  • Способи створення репозиторію. Види сервісів, що дозволяють створити віддалений репозиторій
  • Базові команди git
  • Практика. Створення репозиторію локально. Створення репозиторію на віддаленому сервері
Склад мови С++
  • Приклад простої програми С++
  • Базові способи зібрати додаток
  • Алфавіт мови
  • Що таке лексеми
  • Що таке ідентифікатор як важлива складова програми
  • Що таке ключові слова
  • Коментарі (однорядкові, багаторядкові)
  • Що таке літера. Види літералів. Навіщо вони потрібні в коді
  • Чим відрізняються строковий літерал від інших типів літералів
  • Що таке інструкції
  • Що значить синтаксична помилка. Приклад простої синтаксичної помилки
  • Що таке семантична помилка. Приклад семантичної помилки і можливі її наслідки
Змінні і типи даних
  • Що таке змінна. Синтаксис оголошення змінної
  • Тип даних. Що таке сувора типізація. Навіщо змінній потрібен тип даних
  • Цілочисельний тип даних
  • Символьні типи
  • Починаючи з С++11, цілочисельні типи з фіксованими розміром, які проблеми вони вирішують
  • Що таке аліас на тип даних. Приклад з описом typedef. Розуміння типів size_t, time_t — це просто аліас на вбудований тип
  • Тип void, як маркер різного контексту. Приклад контексту використання цього типу
  • Логічний тип даних
  • Речові типи даних. Можливі підводні камені представлення в пам'яті
  • Простий приклад на асемблері способу представлення цілочисельних типів і речових типів
  • Способи оголошення змінних. Ініціалізація змінних. Проблема неініціалізованих змінних
.......
Основні операції мови С++
  • Види операторів (унарний, бінарний, тернарний). Їхній синтаксис
  • Неявне перетворення при операторі присвоєння. Що таке зрізка. Що таке звужуюче перетворення. Проблема знакового і беззнакового перетворення
  • Явне перетворення типів (С-підхід і С++-підхід)
  • Арифметичні операції
  • Проблема арифметичних операцій. Цілочисельне ділення на нуль, переповнення, і т.д.
  • Змішані вирази. Пріоритет операцій
  • Автоматичне виведення типу як вирішення проблеми переповнення в арифметичних виразах
  • Тимчасова змінна як результат проміжного обчислення виразу. Як виглядає тимчасова змінна в створеному асемблерному коді (простий опис)
  • Базові поняття Rvalue і Lvalue
  • Складовий оператор
  • Пост- і пре-інкремент і декремент. У чому відмінність між пре- і пост-операцією
  • Оператори відношення між операндами. Можливі підводні камені
............
Оператори, що керують ходом виконання програми
  • Умовний оператор if. Приклад можливих проблем з висячими else. Різні підходи з написанням оператора if для уникнення спагетті-коду
  • Що таке область видимості. Що таке блок
  • Оператор вибору switch. Проблема fall through. У чому відмінність між оператором вибору switch і логічним оператором if
  • Що таке compile time- і run time-вираз на прикладі case-гілок оператора вибору switch
  • Оператор циклу for. Способи оголошення циклу for. Навіщо потрібен вічний цикл. Можливі проблеми знакового і беззнакового порівняння і їхні наслідки
  • Оператор циклу while
  • Оператор циклу do while. Використання do while для вирішення проблем з розгалуженням коду із використанням оператору if
  • Тернарний оператор
  • Просте розуміння точки слідування на прикладі оператора коми
Масиви
  • Що таке масив і в чому його переваги
  • Оголошення масивів. Способи вказівки розміру масиву. Ініціалізація масиву. Можливі помилки при ініціалізації масиву
  • Масив змінної довжини як розширення компілятора. Прапор компіляції 3-pedantic
  • Масив символів або рядку. Способи оголошення. Що таке нуль-термінальний символ. Можливі проблеми при ініціалізації символьного масиву
  • Доступ до елементів масиву
  • Що таке вихід за межі масиву. Що таке buffer overflow
  • Цикли як спосіб обходу, обробки і виведення масиву на екран
  • Часті помилки при виборі типу для змінної циклу при роботі з масивом
  • Розмір масиву. Як отримати кількість елементів масиву
  • С++11 range for як спосіб зручної роботи з масивом. У чому відмінність range for від інших циклів і які проблеми вирішує range for на відміну від інших циклів
  • Відмінність символьного масиву від інших типів масивів. Як правильно обходити символьний масив в циклах. Як вивести символьний масив на екран. Як зчитувати символи введені з клавіатури в символьний масив і можливі проблеми
  • Багатовимірні масиви. Приклади уявлення багатовимірного масиву одновимірним масивом
Покажчики
  • Базові поняття пам'яті стек
  • Що таке локальні змінні і як змінні створюються на стеку. Що таке автоматичне керування пам'яттю
  • Базові поняття що таке покажчик
  • Оголошення покажчиків
  • Способи ініціалізації вказівника. Що таке невалідний вказівник.Що таке розіменування покажчика і можливі проблеми. nullptr як правильний літерал для ініціалізації покажчика. Що значить поняття покажчик на тип. Розмір покажчика, моделі пам'яті різних ОС і платформ. Чому для покажчика правильний тип є void *
  • Що таке константний покажчик і покажчик на const. Приклад можливих помилок
  • Арифметика з покажчиками. Чим відрізняються арифметика з покажчиками від арифметики зі змінними
  • Що спільного між масивом і покажчиком. Як обходити масив за допомогою покажчика. Що означає покажчик на елемент за останнім елементом масиву і навіщо так робити
Функції
  • Що таке функція і які вона вирішує проблеми в коді
  • Синтаксис функції
  • Базове поняття що таке оголошення і визначення функції. Приклад відмінності
  • Що таке списки параметрів. Спосіб виклику функції. Завдання значення за замовчуванням для параметру
  • Значення, що повертається з функції. auto як автоматичне виведення, що повертається. Проблеми при автоматичному виведенні типу. Тип void як маркер необоротного значення функції
  • Передача параметрів за значенням
  • Що таке фактичні й формальні параметри
  • Неправильне використання auto як параметру функції та, як наслідок, розширення компіляторів
  • Що таке глобальні змінні. Проблема приховування імен глобальних і локальних змінних
  • Передача за вказівником. Спосіб повернення декількох значень з функції
  • Що таке посилання. У чому відмінність посилання від покажчика
...........
Простори імен
  • Що таке простори імен
  • Що таке вкладені простори імен
  • Нові можливості оголошення просторів імен в С++17
Базові поняття про компіляції та системи зборки
  • Що таке пре-процессінг
  • Що таке компіляція
  • Що таке лінковщик
  • Види компіляторів і їхні особливості
  • Що таке роздільна компіляція
  • Що таке заголовний файл
  • Що таке вартові
  • Що таке бібліотеки
  • Система збирання Make
  • CMake як генератор системи збирання
Наша мета №1 - надати якісні знання та допомогти у працевлаштуванні!
ЧИТАТИ ВІДГУКИ РОБОТОДАВЦІВ
ЩО ТИ ОТРИМАЄШ ПІСЛЯ КУРСУ
1
Сертифікат, який підтвердить твої знання перед майбутнім роботодавцем
2
Досвід роботи в команді, що стане в нагоді в реальних проектах
3
Проект в портфоліо, який можна підтримувати, доповнювати і надалі монетизувати

ІНСТРУКТОРИ

Ти будеш навчатись під керівництвом спеціалістів провідних компаній
ВИМОГИ ДО СТУДЕНТІВ:
Наявність власного ноутбуку для занять в аудиторіях
ЗАБРОНЮЙ МІСЦЕ НА НАЙБЛИЖЧИЙ КУРС
Кількість місць обмежена
C++ base
ЗАБРОНЮЙ МІСЦЕ НА НАЙБЛИЖЧИЙ КУРС
Кількість місць обмежена
C++ base
5% від кожної оплати переводиться на рахунок благодійного фонду "Наш мир"
КУРСИ ЗА НАПРЯМКОМ

Programming base

Навчимо розуміти принципи програмування і працювати з простим кодом
Тривалість навчання
12 занять
Cтарт
Запитуйте в адміністрації
Курс
PROGRAMMING
ЗНИЖКА -40%
Курс
-40%

C++ advanced

Ти детальніше познайомишся з можливостями С++ і вдосконалиш свої навички розробки
Тривалість навчання
17 занять
Cтарт
Запитуйте в
адміністрації
Курс
C++ADVANC
ЗНИЖКА -40%
-40%
Курс
ЗАЛИШИЛИСЯ ЗАПИТАННЯ?
Залиш свій номер телефону, і наш консультант зв'яжеться з тобою, щоб допомогти у виборі напрямку і дати відповіді на всі питання