Онлайн-навчання

Курс C++ Pro

Навчання С++ з нуля онлайн? З ITEA!
Курс С++ Pro дозволить створювати ігри, програмне забезпечення, прикладні програми та нейромережі.

КОЛИ

Старт

27 Жовтня 2021

СКІЛЬКИ

36 занять

2-3 рази на тиждень

З 19:00 до 22:00

ЦІНА

19300 UAH

16400 UAH

Доступна оплата частинами

Доступна оплата частинами

Навчання С++ проходить так:

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

Вебінар

Заняття проходять в онлайн-форматі. Кожен студент доєднується до стріму, де може поставити запитання викладачеві в режимі реального часу й отримати розгорнуту відповідь. Усі уроки для початківців записуються, тому запис будь-якого заняття завжди можна переглянути в особистому кабінеті.

Домашні завдання

Вивчення С++ з нуля в ITEA передбачає виконання домашніх завдань після завершення тематичних блоків з програмування. Так ти закріплюєш пройдений матеріал і отримуєш більше практичних навичок.

Робота з ментором

Ментор супроводжує групу протягом занять та після уроків. Він консультує з приводу домашніх завдань, складання портфоліо та вибору подальшого напрямку. Саме ментор приходить на допомогу, коли у студентів виникають труднощі.

Курсовий проєкт

Наприкінці курсу ти готуєш курсовий проєкт, який потім зможеш додати до свого портфоліо програміста. Вивчення основ C++ разом з ITEA — просто, ефективно й цікаво!

Перша робота в IT?
Разом з ITEA!

Про працевлаштування

Тренінг з працевлаштування всередині курсу

Допомога в складанні резюме та портфоліо

Міні-курс з пошуку роботи наприкінці навчання

Допомога з працевлаштуванням після завершення комплексної освітньої програми

Про працевлаштування

На курсі C++ Pro ти:

За якою формулою проходять онлайн курси С++ Pro:

Ефективний і зручний формат

Щоби навчитися програмування, тобі потрібно приєднатися до прямої трансляції заняття — з будь-якого місця й з будь-якого пристрою. Став запитання викладачеві, спілкуйся на потрібну тему з одногрупниками й отримуй розгорнутий зворотний зв’язок. Пропускаєш заняття? Записи всіх онлайн-ефірів завжди доступні в особистому кабінеті.

Акцент на практичні й домашні завдання

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

Стажування та працевлаштування

Ми не залишаємо своїх випускників! Після завершення курсу C++ Pro кар’єрний центр академії безкоштовно реєструє студентів на поталі JunGo, де зібрані пропозиції від компаній-партнерів ITEA. За допомогою порталу наші студенти швидко знаходять місце для проходження стажування та працевлаштування.

Навчальні бонуси! Міні-курс з працевлаштування та заняття з англійської мови

У курс С++ Pro входять міні-курс з працевлаштування та 2 заняття з англійської мови. На курсі з працевлаштування ти отримаєш знання з того, як формувати резюме, працювати на фріланс-платформах та успішно проходити співбесіди. А на заняттях з англійської мови ти дізнаєшся свій рівень володіння англійської та покращиш свій лексичний запас.

Стабільна робота?
З ITEA!

Інтерактивні онлайн-курси, які ведуть кращі викладачі — унікальна можливість прокачати навички в новому напрямку та опанувати перспективну кар’єру. ITEA допоможе змінити твоє життя в кращу сторону!

Записатися на курс

Junior

від 1 року досвіду
$800+

Middle

від 2-3 років досвіду
$2000+

Senior

від 4 років досвіду
$3700+
Записатися на курс

План навчання на курсі C++ Pro:

1. Трішки історії
  • Що таке мова програмування?
  • Машинні мови
  • Низькорівневі мови (мова асемблера)
  • Високорівневі мови
  • Транслятори
  • Компіляція
  • Інтерпретація
  • Парадигми програмування
  • Модульна парадигма програмування
  • Функціональна парадигма програмування
  • Узагальнена парадигма програмування
  • Об’єктно-орієнтована парадигма програмування
  • Історія С++
2. Основи GIT-системи контролю версії
  • Що таке система контролю версії і що вона вирішує?
  • Основні елементи Git
  • Що таке коміт?
  • Що таке гілка?
  • Способи створення сховища. Види сервісів, що дозволяють створити віддалений репозиторій
  • Базові команди Git
  • Практика. Створення репозиторію локально. Створення репозиторію на віддаленому сервері
3. Зміст С++ мови
  • Приклад простої програми С++
  • Базові способи збірки додатку
  • Алфавіт мови
  • Що таке лексеми?
  • Ідентифікатор як важлива складова програми
  • Що таке ключові слова?
  • Коментарі (однорядкові, багаторядкові)
  • Що таке літера? Види літералів. Їхня значущість у коді
  • Чим відрізняються строковий літерал від інших типів літералів?
  • Що таке інструкції?
  • Що означає синтаксична помилка? Приклад простої синтаксичної помилки
4. Змінні й типи даних
  • Що таке змінна? Синтаксис оголошення змінної
  • Тип даних. Що таке сувора типізація? Навіщо змінній потрібен тип даних?
  • Цілочисельний тип даних
  • Символьні типи
  • Цілочисельні типи починаючи з С++11. Які проблеми вони розв’язують?
  • Що таке аліас на тип даних? Приклад з описом typedef. Розуміння типів size_t та time_t як аліасів на вбудовані типи
  • Тип void як маркер різного контексту. Приклад контексту використання цього типу
  • Логічний тип даних
  • Речові типи даних. Можливі підводні камені уявлення в пам’яті
5. Основні операції С++
  • Види операторів (унарний, бінарний, тернарний). Їхній синтаксис
  • Неявне перетворення при операторі присвоєння? Що таке зрізка? Що таке звужувальне перетворення? Проблема знакового та беззнакового перетворення
  • Явне перетворення типів (С підходить і С++ підхід)
  • Арифметичні операції
  • Проблема арифметичних операцій. Цілочисельне ділення на нуль, переповнення тощо
  • Змішані вираження. Пріоритет операцій
  • Автоматичний висновок типу як розв’язання проблеми перетворення в арифметичних виразах
  • Тимчасова змінна як результат проміжного обчислення виразу. Як виглядає тимчасова змінна в створеному асемблерному коді (простий опис)?
  • Базові поняття про Rvalue і Lvalue
  • Складовий оператор
6. Оператори, що керують ходом виконання програми
  • Умовний оператор if. Приклад можливих проблем з висячими else. Різні підходи до написання оператора if задля уникнення спагеті-коду
  • Що таке область видимості? Що таке блок?
  • Оператор вибору switch. Проблема fall through. У чому відмінність між оператором вибору switch і логічним оператором if?
  • Що таке compile time і run time вираження на прикладі case гілок оператора вибору switch?
  • Оператор циклу for. Способи оголошення циклу for. Для чого потрібен вічний цикл? Можливі проблеми знакового та беззнакового порівняння і їхні наслідки
  • Оператор циклу while
  • Оператор циклу do while. Використання do while задля розв’язання проблем з розгалуженням коду із застосуванням оператора if
  • Тернарний оператор
  • Просте розуміння точки наслідування на прикладі коми
7. Масиви
  • Що таке масив і в чому його переваги?
  • Оголошення масивів. Способи вказівки розміру масиву. Ініціалізація масиву. Можливі помилки при ініціалізації масиву
  • Масив змінної довжини як розширення компілятора. Прапор компіляції — pedantic
  • Масив символом vs строки. Способи оголошення. Що таке символ «термінальний нуль»? Можливі проблеми при ініціалізації символьного масиву
  • Доступ до елементів масиву
  • Що таке вихід за межі масиву? Що таке buffer overflow?
  • Цикли як спосіб обходу, обробки та виведення масиву на екран
  • Часті помилки у виборі типу для змінної циклу при роботі з масивом
8. Покажчик
  • Базові поняття про стек пам’яті
  • Що таке локальні змінні і як змінні створюються на стеку? Що таке автоматичне керування пам’яттю?
  • Поняття покажчика
  • Оголошення покажчиків
  • Способи ініціалізації вказівника. Що таке невалідний покажчик? Що таке розіменування покажчика і якими є можливі проблеми при його проведенні? Nullptr як правильний літерал для ініціалізації покажчика. Що таке покажчик на тип? Розмір покажчика, моделі пам’яті різних ОС та платформ. Покажчики типу void
  • Що таке константний покажчик і покажчик на const? Розбір можливих помилок
  • Арифметика з покажчиками. Чим відрізняється арифметика з покажчиками від арифметики зі змінними?
  • Що спільного між масивом і покажчиком? Як обходити масив за допомогою покажчика? Що означає покажчик на елемент за останнім елементом масиву й навіщо так робити?
9. Функції
  • Що таке функція і які вона вирішує проблеми в коді
  • Синтаксис функції
  • Базове поняття що таке оголошення і визначення функції. Приклад відмінності
  • Що таке списки параметрів. Спосіб виклику функції. Завдання значення за замовчуванням для параметру
  • Значення, що повертається з функції. auto як автоматичне виведення, що повертається. Проблеми при автоматичному виведенні типу. Тип void як маркер необоротного значення функції
  • Передача параметрів за значенням
  • Що таке фактичні й формальні параметри
  • Неправильне використання auto як параметру функції та, як наслідок, розширення компіляторів
  • Що таке глобальні змінні. Проблема приховування імен глобальних і локальних змінних
  • Передача за вказівником. Спосіб повернення декількох значень з функції
  • Що таке посилання. У чому відмінність посилання від покажчика
  • Посилання як частина інтерфейсу функції
  • Які проблеми вирішує посилання в порівнянні з покажчиком як параметр функції. Які переваги константної посилання. Чому можна передавати Rvalue, як аргумент константної посилання
  • Приклад як зробити посилання невалідною
  • Стек і виклик функцій
  • Угода про виклик функцій
  • Масиви як параметри функції. Способи оголошення масиву як параметру функції і часті помилки. Проблема отримання кількості елементів масиву в функції
  • Рекурсія. Inline-функції
  • Що таке перевантаження функцій. Що таке mangling імен функції на прикладі генерації ассемблерного коду
  • Чому перевантаження недоступне в мові С. Простий опис ключового слово extern «C» як приклад опису перевантаження
  • Що таке покажчик на функцію та які проблеми вирішує передача функції як параметр функції на прикладі алгоритму сортування
  • Базові поняття що таке lambda як заміна вказівника на функцію. Що таке std :: function
  • Проблеми при поверненні локальних змінних з функції за посиланням або вказівником
  • Зняття константності з аргументу використання std :: const_cast
10. Простори імен
  • Що таке простори імен
  • Що таке вкладені простори імен
  • Нові можливості оголошення просторів імен в С++17

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

Команда ITEA зібрала кращих практиків: керівників, senior-фахівців і експертів з багаторічним досвідом

Software Engineer

Роман Ткачик

Понад 12 років досвіду. Брав участь у різних IT-проектах щодо розробки мережевих, десктопних і web-додатків, а також вбудованих пристроїв. Ідеально володіє навичками роботи з .NET, C#, LINQ, C/C++, SQL, Boost, STL, Multithreading, TCP/IP, Git, Scrum. Автор тестів функціональної та системної інтеграції, тестів з автоматизації для Windows і веб-додатків. Має сертифікат AZ-300 Azure Architecture Technologies Exam Prep 2020.

Senior Software Engineer (С++ Developer)

Микола Солянко

Senior Software Development Engineer у компанії EPAM Systems. 9 років досвіду. Займав посаду Software engineer в Ukrgaztech, де розробляв додатки та працював з даними, використовуючи бібліотеку Qt. Також був Lead Engineer Samsung у R&D Institute Ukraine, де працював з C/C++, EFL framework та Tizen IDE.

Встигни забронювати своє місце в групі

Якщо після першого заняття ти відчуєш, що цей курс не для тебе (наприклад, не підходить за складністю), то ми повернемо гроші.

Тобі можуть підійти ці IT-курси онлайн:
Розклад курсів

Вибирай IT-курси суміжного напряму, щоб розширити свої компетенції і підвищити свою конкурентоспроможність.

Відповідаємо на питання, які часто задаються
Який рівень англійської мови потрібен для працевлаштування на позицію Junior?
Рівень знання англійської мови безпосередньо залежить від вакансії. Для багатьох Junior-фахівців англійська рівня Intermediate буде перевагою, проте для деяких вакансій досить рівня Elementary.
Чи потрібно мати попередню підготовку в рамках вашого навчання?
Мінімальні вимоги вказані на сторінці кожного курсу. Найчастіше базові курси не потребують спеціальної підготовки. Для курсів поглибленого рівня досить матеріалу попереднього (базового) курсу.
Чи є вікові обмеження на проходження курсу?
Курси націлені на аудиторію віком від 18 років.
Чи буде викладач допомагати мені з вирішенням практичних завдань: давати поради, дивитися скріншоти, пояснювати те, що я не зрозумів?
Так. Викладач завжди на зв'язку, щоб направити студента і при необхідності виправити його. Викладач бере за основу власний досвід і наводить приклади з власної практики. Викладач не рухається далі по програмі, поки студенти не засвоять матеріал на потрібному рівні.
Як відбувається процес працевлаштування в ITEA після проходження курсу і отримання сертифікату?
Студенти, які набрали максимальну кількість балів в ході навчання і пройшли програму професії, отримують спеціальну форму резюме, по якій ми співпрацюємо з нашими партнерами.

Ми також проводимо перевірку резюме, супровідних листів та даємо консультації, якщо виникають питання.
Якщо я роблю паузу в навчанні (наприклад, через хворобу), чи можу я відновитися? Чи не будуть втрачені час і гроші?
Якщо ти був змушений тимчасово припинити навчання - не потрібно знову повертатися до самого початку. Ти завжди можеш продовжити з того ж місця, де зупинився. Деталі відновлення розповість наш менеджер.
Чи не буде в курсі багато теорії? Я отримаю практичні знання?
Інформація без практичного закріплення довго не тримається в пам'яті. Тому після отримання нових знань, наші студенти відразу застосовують їх на практиці.

Викладач допомагає їм впоратися з завданнями і відповідає на питання, які можуть виникнути. Тому тебе чекає практика на заняттях, у домашніх завданнях, а також при роботі з власним проектом у кінці курсу.

В обработке...