На языке С++ постоянно работают миллионы программистов по всему миру.
Достоинства:
С++ – язык программирования высокого уровня, на котором разрабатываются большинство современных программ. С++ станет проводником в мир IT-технологий для учеников, мечтающих стать гуру в программировании.
Первый курс посвящен разработке приложений без графического интерфейса, где взаимодействие пользователя с компьютером происходит в командной строке. Наши ученики осваивают базовые конструкции языка: условия, циклы, функции. Изучают переменные и массивы для хранения данных. Составляют алгоритмы для решения задач по обработке данных.
Освоить методы написания программ на языке C++ и основные конструкции языка, научиться создавать консольные приложения.
Знакомство с Qt Creator – профессиональной средой разработки приложений на C++.
Базовые термины из области программирования: данные, алгоритм, программа, компиляция и запуск программного кода.
Первые операторы языка программирования: вывод данных, ввод данных, математические операции с данными.
Функция main. Алфавит языка, основные типы данных. Использование переменных. Условный оператор. Операторы цикла: цикл с предусловием, цикл с параметром, цикл с постусловием. Генератор псевдослучайных чисел.
Виды алгоритмов: следование, ветвление, цикл. Составление блок-схем для наглядного отображения алгоритмов.
Комбинирование нескольких алгоритмов в пределах одной программы. Решение задач, требующих реализации сложных алгоритмов.
Постановка цели в проектной деятельности. Разбиение больших задач на малые части. Реализация индивидуального проекта.
Применение обширного комплекса изученных инструментов в пределах одной задачи. Формирование понятийного аппарата, группировка инструментов по категориям.
Полезные фишки в разработке проектов: правила оформления кода, обеспечение лёгкой читаемости, резервное копирование файлов. Методы поиска и исправления ошибок кода.
Статические массивы, основные операции над массивами. Символьный и строковый типы данных. Операции над строками.
Работа с текстовыми файлами: запись данных в файл, чтение из файла.
Области видимости переменных. Локальные и глобальные переменные.
Функции. Передача данных в функцию. Получение результата работы функции.
Динамические массивы и их методы. Использование флагов и манипуляторов. Работа с потоком текстового ввода.
На втором курсе изучения C++ ученики открывают для себя событийно-ориентированное программирование. Система классов Qt Creator — мощный инструмент для создания приложений с графическим интерфейсом, понятным любому пользователю. В результате обучения ученики смогут самостоятельно создать программы не только для ввода данных пользователем и их обработки, но и организовать взаимодействия и передачу данных в многооконных приложениях.
Научиться разрабатывать графические приложения в среде разработки Qt Creator с использованием компонента Qt Designer.
Основные конструкции языка C++. Переменные и типы данных. Ввод и вывод данных. Условный оператор, циклы, функции. Работа со строками и массивами. Генератор псевдослучайных чисел.
Основные термины: интерфейс, виджет, событие (сигнал), обработчик события (слот).
Стандартные виджеты Qt: кнопки, поля ввода данных, элементы для отображения данных. Изменение свойств виджетов.
Отслеживание и обработка различных событий: нажатие кнопки, ввод данных в поле, изменение значения ползунка и т.д.
Возможности различных виджетов. Ввод-вывод числовых и текстовых данных. Функции для преобразования данных.
Использование вспомогательных классов: шрифт, изображение, таймер и др.
Стилевой язык QSS. Настройка внешнего вида элементов программы: цвета, шрифты, границы, отзывчивость при наведении/нажатии мышью.
Основные приёмы дизайна интерфейсов: компоновка элементов, использование группировочных виджетов, обеспечение лёгкого восприятия пользователем.
Постановка цели в проектной деятельности. Разбиение больших задач на малые части. Реализация индивидуального проекта.
Применение обширного комплекса изученных инструментов в пределах одной задачи. Формирование понятийного аппарата, группировка инструментов по категориям.
Полезные фишки в разработке проектов: правила оформления кода, обеспечение лёгкой читаемости, резервное копирование файлов.
Создание многооконных приложений. Передача данных между окнами. Работа с файлами.
Статические и динамические массивы виджетов. Двумерные массивы.
Создание стандартных всплывающих окон: информирующее, предупреждающее, запрещающее, предлагающее выбор.
На третьем курсе учеников встречает объектно-ориентированное программирование – парадигма, которая позволяет значительно повысить скорость и удобство разработки, а также расширить возможности программиста.
Для максимальной наглядности и увлекательности используются специальные библиотеки, позволяющие создавать игры с применением компьютерной графики.
Освоить ООП и научиться разрабатывать масштабные игры с его применением.
Синтаксис языка C++. Алгоритмы и алгоритмические конструкции. Области видимости переменных. Работа с функциями. Массивы, работа с массивами.
Понятие объекта и понятие класса. Свойства и методы. Конструктор класса. Сеттеры и геттеры.
Наследование, инкапсуляция, композиция, полиморфизм. Методология применения ООП.
Графические библиотеки и их стандартые классы. Настройка холста для отрисовки объектов. Отрисовка графических примитивов.
Загрузка ассетов: шрифты, изображения, звуковые и прочие файлы. Отрисовка изображений и текста. Работа с координатами холста.
Обнаружение и обработка событий: нажатия мыши и клавиатуры, движение курсора, изменение размеров окна и др.
Стандартные игровые алгоритмы: нахождение точки в области, соприкосновение объектов, плавное движение, анимация.
Полезные фишки в разработке проектов: разбиение программы на отдельные классы, улучшение читаемости кода. Система управления версиями Git.
Реализация индивидуального/группового проекта.
На четвёртом курсе продолжается изучение возможностей языка C++. Ученики занимаются созданием сетевых приложений: от мессенджера и файлового сервера до онлайн-игр.
Также изучается технология Qt Quick для создания пользовательского интерфейса и декларативный язык QML для создания мобильных приложений.
Изучить технологии передачи данных по сети и с их помощью разработать многопользовательские приложения.
Синтаксис языка C++. Принципы хранения, обработки и передачи данных. Алгоритмизация в программировании.
Парадигма СОП. Разработка оконных приложений с помощью Qt Designer. Стандартные виджеты. Обработка событий.
Парадигма ООП. Отрисовка графических объектов. Стандартные игровые алгоритмы. Разбиение программы на отдельные классы.
Понятие базы данных. Возможности в работе с БД: получение данных, запись данных, фильтрация и компоновка данных. Работа с таблицами.
Синтаксис языка SQL. Работа в СУБД. Библиотеки языка C++ для выполнения SQL-запросов.
Протоколы передачи данных. Сетевая модель. OSI. Семейство TCP/IP. Адресация в сети: IP-адрес, доменное имя, порт. Модель «клиент-сервер». Серверное приложение. «Тонкий» и «толстый клиент».
Сокетное соединение. Модуль QtNetwork. Протоколы TCP и UDP. Реализация сервера и клиента. Управление доступом к сети. Пакетная передача данных.
Постановка цели в проектной деятельности. Разбиение больших задач на малые части. Реализация группового проекта.
Распределение задач между участниками проектной деятельности. Взаимодействия в команде разработчиков.
Полезные фишки в разработке проектов: Система управления версиями Git. Разбиение проекта на модули, технологии модульной разработки.
Введение в QML. Визуальные элементы. Создание динамических элементов. Диалоговые окна. Управление размещением элементов.
Элементы графики. Цвета, градиенты, растровые изображения. Шейдеры и эффекты. Анимация.
Пользовательский ввод. Область мыши, сигналы. Ввод с клавиатуры. Мультитач. Состояния и переходы.
Каждый курс составляет 102 академических часа. Занятия проводятся 1 раз в неделю по 120 минут. В случае уважительных пропусков проводятся дополнительные занятия
в параллельных группах или индивидуальные занятия с преподавателем.
Посещение занятий возможно как в очном
так и в онлайн режиме.
Занятие - 60 минут
Занятие - 60 минут
Занятие - 40 минут
При записи в группу не в начале учебного года необходимо пройти дополнительные занятия. Количество дополнительных занятий сообщает преподаватель после тестирования.