ОСТАВЬ СВОИ ДАННЫЕ
и мы свяжемся с тобой в ближайшее время!
ЗАПОЛНИ ФОРМУ НИЖЕ
чтобы записаться на пробное занятие "Базовый курс C++"

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

Знакомство с принципами программирования и особенностями C++ разработки на практических примерах
Старт обучения
16 занятий
16.01.2020
5000 грн
КОГДА
СКОЛЬКО
ЦЕНА
2-3 раза в неделю
с 19:00 до 22:00
C++ base
Для юр. лиц цена указана без НДС

КОМУ БУДЕТ ПОЛЕЗЕН КУРС

1
Новичкам
которые не имеют опыта в IT, но хотят получить профессию с интересными задачами и высоким доходом
2
IT-специалистам
желающим расширить свой стек технологий и поработать над новыми проектами
3
Самоучкам
которым нужны курсы C++ для систематизации собственных знаний
ВМЕСТЕ ДЕШЕВЛЕ

C++ base

Знакомство с принципами программирования и особенностями C++ разработки на практических примерах
Курс

+

=

8900

10500

грн.

C++ advanced

Ты детальнее познакомишься с возможностями С++ и усовершенствуешь свои навыки разработки
Курс

C++ base + C++ advanced

C++ base + C++ advanced
заполняй заявку на несколько курсов и получай скидку 15%!

ЧТО ТЫ СМОЖЕШЬ ПОСЛЕ ОБУЧЕНИЯ

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.
  • Тернарный оператор.
  • Простое понимание точки следования на примере оператора запятой.
Массивы
  • Что такое массив и в чем его преимущества.
  • Объявления массивов. Способы указания размера массива. Инициализация массива. Возможные ошибки при инициализации массива.
  • Массив переменной длины, как расширение компилятора. Флаг компиляции -pedantic.
  • Массив символом или строки. Способы объявления. Что такое нуль терминальный символ. Возможные проблемы при инициализации символьного массива.
  • Доступ к элементам массива
  • Что такое выход за границы массива. Что такое buffer overflow
  • Циклы как способ обхода, обработки, и вывода массива на экран
  • Частые ошибки при выборе типа для переменной цикла при работе с массивом.
  • Размер массива. Как получить количество элементов массива.
  • С++11 range for как способ удобной работы с массивом. В чем отличие range for и других циклов и какие проблемы решает range for в отличии от других циклов.
  • Отличие символьного массива от других типов массивов. Как правильно обходить символьный массив в циклах. Как вывести символьный массив на экран. Как считывать символы введенные с клавиатуры в символьный массив и возможные проблемы.
  • Многомерные массивы. Примеры представления многомерного массива одномерным массивом.
Указатели
  • Базовые понятия памяти стек.
  • Что такое локальные переменные и как переменные создаются на стеке. Что такое автоматическое управление памятью.
  • Базовые понятия что такое указатель.
  • Объявление указателей.
  • Способы инициализации указателя. Что такое невалидный указатель.Что такое разыменования указателя и возможные проблемы. nullptr как правильный литерал для инициализации указателя. Что значит понятия указатель на тип. Размер указателя, модели памяти разных ОС и платформ. Почему для указателя правильный тип есть void*
  • Что такое константный указатель и указатель на const. Пример возможный ошибок.
  • Арифметика с указателями. Чем отличаются арифметика с указателями от арифметики с переменными.
  • Что общего между массивом и указателем. Как обходить массив с помощью указателя. Что означает указатель на элемент за последним элементом массива и зачем так делать.
Функции
  • Что такое функция и какие она решает проблемы в коде.
  • Синтаксис функции
  • Базовое понятие что такое объявление и определение функции. Пример отличия.
  • Что такое списки параметров. Способ вызова функции. Задание значения по умолчанию для параметра
  • Возвращаемое значение из функции. auto как автоматический вывод возвращаемого значения. Проблемы при автоматическом выводе типа. Тип void как маркер не возвращаемого значения функции.
  • Передача параметров по значению.
  • Что такое фактические и формальные параметры.
  • Неправильное использования auto в качестве параметров функции, как следствие расширения компиляторов.
  • Что такое глобальные переменные. Проблема сокрытия имен глобальный и локальных переменных.
  • Передача по указателю. Способ возврата нескольких значений с функции
  • Что такое ссылки. В чем отличие ссылки от указателя.
...........
Пространства имен
  • Что такое пространства имен.
  • Что такое вложенные пространства имен.
  • Новые возможности объявления вложенных пространств имен в С++17
Базовые понятия о компиляции и системах сборки
  • Что такое препроцессинг
  • Что такое компиляция
  • Что такое линковщик
  • Виды компиляторов и их особенности
  • Что такое раздельная компиляция
  • Что такое заголовочный файл
  • Что такое стражи
  • Что такое библиотеки
  • Система сборки Make
  • CMake как генератор системы сборки
Хочешь ознакомиться с полной программой обучения?
Оставь свой email и мы вышлем тебе полную программу обучение сегодня же!
ЧТО ТЫ ПОЛУЧИШЬ ПОСЛЕ КУРСА
1
Сертификат, который подтвердит твои знания перед будущим работодателем
2
Опыт работы в команде, что пригодится в реальных проектах
3
Рекомендации по трудоустройству в компании-партнеры ITEA

ИНСТРУКТОРЫ

Ты будешь учиться под руководством специалистов ведущих компаний
ТРЕБОВАНИЯ К СТУДЕНТАМ:
Наличие собственного ноутбука для занятий в аудиториях
ЗАБРОНИРУЙ МЕСТО НА БЛИЖАЙШИЙ КУРС
Осталось 2 места из 15
C++ base
ЗАБРОНИРУЙ МЕСТО НА БЛИЖАЙШИЙ КУРС
Осталось 2 места из 15
C++ base
КУРСЫ ПО НАПРАВЛЕНИЮ

Programming base

Научим понимать принципы программирования и работать с простым кодом
Время обучения
12 занятий
Cтарт
Уточняйте в администарции
Курс
PROGRAMMING
КУРС

C++ advanced

Ты детальнее познакомишься с возможностями С++ и усовершенствуешь свои навыки разработки
Время обучения
17 занятий
Cтарт
Уточняйте в администрации
Курс
C++ADVANC
КУРС
ОСТАЛИСЬ ВОПРОСЫ?
Оставь свой номер телефона, и наш консультант свяжется с тобой чтобы помочь в выборе направления и дать ответы на все вопросы