C++

Базовый курс
проверка

До начала осталось 1 дня
Длительность курса 30 часов

Курс читается 2 раза в неделю начало с 18:30*


Групповые занятия
0 0грн
Записаться
Контакты
(044) 599-01-79
(093) 193-53-14
(050) 599-46-63

Для кого этот курс

Вводный курс разработан для обучения студентов овладению принципами объектно-ориентированного программирования, анализа и проектирования. По прохождении курса обучения вы сможете разрабатывать ПО на языке C++, выполнять математические расчеты решать задачи и реализовывать типовые алгоритмы. Кроме того, вы познакомитесь с разработкой консольных приложений в операционной системе Linux. Мы обучим вам приемам разработки ПО, решению типичных задач программирования и разработке приложений на языке программирования C++ в ОС Linux. Вы ознакомитесь с составом языка C++ и его основными операциями, операторами и функциями, структурой программы на C++. Также в ходе курса мы научим вас объектно-ориентированному программированию и основам работы с графикой OpenGL. Пройдя вводный курс, вы получите теоретические основы объектно-ориентированного программирования на C++ и будете готовы прослушать основной курс обучения.

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

  • Введение. Немного истории.
  • Состав языка.
  • Основные операции языка С++.
  • Операторы языка С++.
  • Функции.
  • Форматированный ввод/вывод.
  • Структура программы на языке С++.
  • Массивы и указатели.
  • Пользовательские типы данных
  • Динамическая память.
  • Введение в объектно-ориентированное программирование.
  • Объектно-ориентированное программирование на языке С++
  • Принципы ООП
  • Шаблоны (паттерны) проектирования
  • Наследование.
  • Полиморфизм.
  • Абстрактные классы и интерфейсы.
  • Пространства имен.
  • Перегрузка методов и операторов.
  • Шаблоны типов.
  • Обработка исключений.
  • Потоковый ввод/вывод.
  • Сетевое взаимодействие.
  • Основы работы с графикой OpenGL.
  • Проектирование программного обеспечения.
  • Отношения между классами.

Лекторы курса

Преподаватель

*Объявленный формат чтения занятий предварительный. За уточнениями обращайтесь, пожалуйста, к менеджеру.

До начала осталось 1 дня
Длительность курса 36 часов

Курс читается 2 раза в неделю начало с 18:30*


Групповые занятия
3700 2590грн
Записаться
Контакты
(044) 599-01-79
(093) 193-53-14
(050) 599-46-63

Описание курса

Курс состоит из 11 занятий общей длительностью 36 академических часа, из которых 14 часа уделяется рассмотрению теоретического материала, 22 часа практической работы. В курсе предусмотрено 11 лабораторных работ для самостоятельного освоения практической стороны рассмотренного материала. Для контроля успеваемости слушателей предусмотрено результирующее тестирование. Основной задачей курса есть обучить слушателей курса теоретическим основам объектно-ориентированного программирования, приемам разработки программного обеспечения, решения типичных задач программирования и разработке приложений на языке С++ в операционной системе Linux.

Требования к слушателям

  • Владение ПК
  • Знание основ теории программирования

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

  • Введение. Немного истории.
    • Организация вычислительной системы
    • Организация памяти
    • Языки программирования
    • Машинные языки
    • Языки низкого уровня
    • Языки высокого уровня
    • Трансляторы – компиляторы и интерпретаторы
    • Подходы к разработке ПО
    • Процедурное, модульное, структурное программирование
    • Объектно-ориентированный подход
    • Обобщенное программирование
    • Краткая история С/С++
  • Состав языка.
    • Алфавит
    • Основные составляющие языка
    • Идентификаторы
    • Ключевые слова
    • Комментарии
    • Пример простейшей программы на С++
  • Переменные и базовые типы данных
    • Переменные
    • Целочисленные типы
    • Типы с плавающей точкой
    • Логический тип
    • Символьный тип
    • Пустой тип void
    • Модификаторы типов «short», «long», «unsigned», «signed»
    • Модификаторы типов «short», «long», «unsigned», «signed»
    • Константы
    • Объявление и инициализация переменных
    • Глобальные и локальные переменные
    • Приведение типов
  • Основные операции языка С++
    • Операция присваивания
    • Арифметические операции
    • Арифметические операции с присваиванием
    • Логические операции
    • Поразрядные операции
    • Операции проверки равенства/неравенства
    • Инкремент, декремент
    • Условная операция
    • Возвращаемое значение
    • Ассоциативность операций
    • <liПриоритет операций>

  • Операторы языка С++
    • Условный оператор «if else»
    • Оператор выбора «switch»
    • Операторы циклов «for», «while», «do while»
    • Операторы «goto», «break», «continue»
    • Пустой оператор
    • Оператор вызова функции
    • Оператор «sizeof»
    • Оператор «sizeof»
  • Функции
    • Понятие функции в С++
    • Оператор «return»
    • Параметры функции
    • Формальные и фактические параметры
    • Передача параметров по ссылке и по значению
    • Рекурсивные функции
    • Шаблоны функций
    • Перегрузка функций
  • Форматированный ввод/вывод
    • Функции ввода/вывода
    • Управляющие последовательности символов
  • Структура программы на языке С++
    • Директивы препроцессора
    • Подключение внешних модулей
    • Порядок компиляции
    • Область видимости определений
    • Макроопределения
    • Функции
    • Функция «main»
    • Тип функции «main»
    • Аргументы командной строки
  • Массивы и указатели
    • Понятие массива
    • Работа с массивами
    • Одномерные и многомерные массивы
    • Указатели
    • Работа с динамической памятью
    • Операции с указателями
    • Массивы указателей
    • Адресная арифметика
    • Операции с указателями
  • Пользовательские типы данных
    • Структуры (struct)
    • Перечисления (enum)
    • Объединения (union)
    • Работа со структурным типом
    • Доступ к полям
  • Динамическая память
    • Работа с динамической памятью
    • Методы работы с динамической памятью
    • Функции «malloc» и «free»
    • Операции «new» и «delete»
    • Динамические структуры данных
    • Список
    • Двусвязные и односвязные списки
    • Очередь
    • Стек
  • Введение в объектно-ориентированное программирование
    • Объектно-ориентированный подход к разработке программного обеспечения
    • Объектно-ориентированный анализ и проектирование
    • Принципы ООП
  • Объектно-ориентированное программирование на языке С++
    • Понятие класса и объекта
    • Поля и методы класса
    • Модификаторы прав доступа
    • Конструкторы и деструкторы
    • Создание экземпляра объекта
    • Динамические и статические объекты
    • Инициализация, присваивание и уничтожения объекта
    • Копирующий конструктор и указатель «this»
  • Принципы ООП
    • Инкапсуляция
    • Наследование
    • Полиморфизм
    • Реализация принципов ООП на языке С++
  • Шаблоны (паттерны) проектирования
    • Паттерн проектирования «Singleton»
  • Наследование
    • Наследование классов
    • Множественное наследование
    • Защищенное наследование
    • Закрытое наследование
    • Открытие доступа к отдельным членам класса
    • Композиция объектов
    • Область видимости при наследовании
  • Полиморфизм
    • Реализация полиморфизма
    • Виртуальные функции
  • Абстрактные классы и интерфейсы
    • Понятие интерфейса
    • Наследование интерфейсов
    • Понятие пространства имен
  • Перегрузка методов и операторов
    • Переопределение и перегрузка методов класса
    • Перегрузка операторов
    • Дружественные методы
    • Паттерн проектирования «Прототип»
  • Шаблоны типов
    • Шаблонные функции
    • Шаблонные классы
    • Работа с шаблонами
    • Параметрические типы
  • Обработка исключений
    • Исключительные ситуации и работа с ними
    • Блоки «try catch»
    • Генерация исключения «throw»
    • Отладочный макрос «_ASSERT»
  • Потоковый ввод/вывод
    • Классы ввода/вывода данных
    • Потоки данных
    • Ввод/вывод
    • Бинарные и текстовые файлы
    • Создание, чтение, запись файлов
  • Сетевое взаимодействие
    • Основы Socket API
    • Установка соединения
    • Передача данных
  • Основы работы с графикой OpenGL
  • Проектирование программного обеспечения
    • Проектирование классов
    • Проектирование библиотек
    • Шаблоны (паттерны) проектирования
  • Отношения между классами
    • Ассоциация
    • Агрегация
    • Композиция
    • Наследование
    • Формы наследования

После изучения курса вы сможете:

  • Разрабатывать ПО на языке C++
  • Выполнять математические расчеты решать задачи и реализовывать типовые алгоритмы
  • Вы познакомитесь с разработкой консольных приложений в операционной системе Linux
  • Мы обучим вас приемам разработки ПО
  • Получите навыки по решению типичных задач программирования и разработке приложений на языке программирования C++ в ОС Linux

Лекторы курса

Преподаватель

*Объявленный формат чтения занятий предварительный. За уточнениями обращайтесь, пожалуйста, к менеджеру.
Продвинутый курс
проверка продвинутый курс c++

До начала осталось 1 месяца 6 дней
Длительность курса 36 часов

Курс читается 2 раза в неделю начало с 18:30*


Групповые занятия
3700 2590грн
Записаться
Контакты
(044) 599-01-79
(093) 193-53-14
(050) 599-46-63

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

  • Введение в стандартную библиотеку шаблонов
  • Контейнеры, алгоритмы, адаптеры
  • Введение в Qt. Программирование GUI с помощью Qt
  • Архитектуры приложений
  • Базы данных
  • XML
  • Работа с сетью
  • Многопоточность
  • Интернационализация
  • Модульное тестирование ПО (unittesting)
  • Основы создания приложений Qt Quick
  • Основы разработки Qt-приложений под Android
*Объявленный формат чтения занятий предварительный. За уточнениями обращайтесь, пожалуйста, к менеджеру.

До начала осталось 1 месяца 6 дней
Длительность курса 36 часов

Курс читается 2 раза в неделю начало с 18:30*


Групповые занятия
3700 2590грн
Записаться
Контакты
(044) 599-01-79
(093) 193-53-14
(050) 599-46-63

Описание курса

Основной курс обучения C++ поможет студентам усовершенствовать навыки объектно-ориентированного программирования. Вы научитесь работать со стандартной библиотекой C++, освоите основные возможности библиотеки Qt, получите практический опыт разработки GUI приложений в операционной системе Linux. Мы обучим вас приемам разработки программного обеспечения, решения типичных задач программирования и разработке GUI приложений на языке С++ с помощью библиотеки Qt в операционной системе Linux. Вы ознакомитесь со стандартной библиотекой шаблонов, узнаете о контейнерах, алгоритмах и адаптерах, разберетесь в архитектуре приложений и базах данных, поработаете с многопоточностью и модульным тестированием ПО. Курс состоит из 12 занятий общей длительностью 36 академических часа, из которых 12 часов уделяется рассмотрению теоретического материала, 24 часа практической работы. В курсе предусмотрено 12 лабораторных работ для самостоятельного освоения практической стороны рассмотренного материала. Для контроля успеваемости слушателей предусмотрено выполнение индивидуального курсового проекта.

Требования к слушателям

  • Владение ПК
  • Знание основ теории программирования
  • Основы С++

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

  • Введение в стандартную библиотеку шаблонов
    • Структура библиотеки
    • Основные компоненты. Операторы. Пара
    • Итераторы. Итераторы ввода. Итераторы вывода. Однонаправленные итераторы. Двунаправленные итераторы. Итераторы произвольного доступа. Теги итераторов. Операции с итераторами
    • Итераторы потоков. Итератор входного потока. Итератор выходного потока
    • Контейнеры. Последовательности. Ассоциативные контейнеры
  • Контейнеры, алгоритмы, адаптеры
    • Функциональные объекты. Базовые классы. Арифметические операции. Сравнения. Логические операции
    • Распределители. Требования распределителей. Распределитель по умолчанию
    • Адаптеры. Адаптеры контейнеров. Адаптеры итераторов. Адаптеры функций
    • Алгоритмы. Не меняющие последовательность операции. Меняющие последовательность операции. Операции сортировки и отношения. Обобщённые численные операции
  • Введение в Qt. Программирование GUI с помощью Qt
    • Основные принципы работы с библиотекой Qt
    • Объектная модель. Метаобъекты, свойства, сигналы и слоты. Типы, варианты, ссылки
    • Обзор классов библиотеки
    • Программирование GUI с помощью Qt. Виджеты. Окна, диалоговые окна, главные окна. Меню. Пользовательские виджеты. Обработка событий
    • Создание GUI приложений
    • Основы работы с 2D и 3D графикой
  • Архитектуры приложений
    • Отдельное приложение. Клиент-сервер. Трехуровневая архитектура. Многослойная архитектура
    • Архитектурные паттерны MVP, MVC, MVVM
    • Паттерны проектирования
  • Базы данных
    • Соединение с базой. Выполнение запросов. Обработка данных.
    • Представление данных в табличной форме
    • Создание форм по технологии «master-detail»
  • XML
    • Формат документа XML. Стандарты. Схемы
    • Использование XML
    • Чтение XML при помощи интерфейсов SAX и DOM
    • Запись документов XML
    • Сериализация
    • Паттерн проектирования «Memento»
  • Работа с сетью
    • Создание FTP и HTTP клиентов
    • Создание клиент-серверных приложений на базе TCP
    • Работа с протоколом UDP
  • Многопоточность
    • Создание потоков
    • Синхронизация потоков
    • Взаимодействие с главным потоком
    • Применение классов Qt во вторичных потоках
  • Интернационализация
    • Работа с Unicode
    • Создание переводимого приложения. Перевод приложений и динамическое переключение языков
  • Модульное тестирование ПО (unittesting)
    • Введение в модульное тестирование
    • Создание модульных тестов с помощью Qt
  • Основы создания приложений Qt Quick
    • QML для построения пользовательского интерфейса
    • Обзор основных возможностей
    • Создание приложения на Qt Quick
  • Основы разработки Qt-приложений под Android
    • Установка SDK. Настройка Qt Creator для работы с AndroidSDK
    • Создание виртуального устройства
    • Сборка и запуск приложения

После изучения курса вы сможете:

  • Усовершенствуете навыки объектно-ориентированного программирования, анализа и проектирования
  • Научитесь работать со стандартной библиотекой С++
  • Освоите основные возможности библиотеки Qt
  • Получите практический опыт разработки GUI приложений в операционной системе Linux
  • После прохождения основного курса ваши навыки программирования на C++ будут достаточными для получения серьезной высокооплачиваемой работы

Лекторы курса

Преподаватель

*Объявленный формат чтения занятий предварительный. За уточнениями обращайтесь, пожалуйста, к менеджеру.