Бакалавриат
2026/2027




Язык программирования C++
Статус:
Курс обязательный (Дизайн и разработка информационных продуктов)
Кто читает:
Базовая кафедра Т-Банка
Где читается:
Факультет компьютерных наук
Когда читается:
1-й курс, 1, 2 модуль
Охват аудитории:
для своего кампуса
Язык:
русский
Кредиты:
7
Контактные часы:
84
Программа дисциплины
Аннотация
Курс нацелен на формирование у студента понимания общих принципов эффективного применения языка С++ при решении различных задач. Рассматривается базовый синтаксис, основные механики и возможности языка программирования С++, с глубоким погружением в детали реализации и работы. Большое внимание уделяется современным возможностям и стандартам языка и инструментам и библиотекам - элементам, которые не являются частью языка, но без которых не получится построить большой и сложный проект. Одним из основных аспектов курса является обучение разработке эффективных и надежных программ на C++. Студенты учатся писать код, который легко читается, понимается и поддерживается. Они также знакомятся с современными практиками программирования, такими как использование шаблонов, идиом и паттернов проектирования
Цель освоения дисциплины
- Знание основных конструкций языка С++, достаточного для реализации решения задач в последующих курсах
- Практическое применение языка С++
- Понимание и применение основных принципов разработки
- Владение современными инструментами разработки
Планируемые результаты обучения
- Применяет на практике язык С++
- Знает и применяет основные принципы разработки
- Владеет современными инструментами разработки
- Знает основные конструкции языка С++, достаточного для реализации решения задач в последующих курсах.
Содержание учебной дисциплины
- Фундаментальные типы и переменные
- Условная операция, оператор и циклы
- Указатели и массивы
- Ссылки и начало функций
- Функции и строки. Исключения
- Модульное программирование
- Шаблоны функций
- Пользовательские типы данных
- Введение в ООП
- Конструкторы
- Перегрузка операций и функторы
- Контейнеры
- Move-семантика. Итераторы
- Наследование. Полиморфизм
- О курсе. Введение в язык. Первая программа. Структура программы. Память и типы данных.
- Память и типы данных. Хранение чисел в памяти IEEE. Особенности перевода и вычитания больших чисел. Операторы битовые I & ^ и т.д.
- Условный оператор и switch. Типичные задачи на условный оператор и switch. Цикл while. break continue. Цикл for. В т.ч. использование while как for. Вложенные циклы, особенности, типовые задачи. Типичные задачи на цикл
- Статический массив. Одномерный статический массив. Типичные задачи. Многомерный статический массив. Типичные задачи.
- Строки. С-строки
- Введение в указатели. Арифметика указателей. Указатели на указатели. Указатели нулевые, висячие, динамическое выделение памяти. Ссылки.
- Динамический массив одномерный. Связь с указателями. Типичные задачи на одномерный динамический массив. Двумерный динамический массив. Типичные задачи.
- Функции. Рекурсивные функции. Перегрузка. Функции, передача указателей. Функции, передача массивов. Переменное число аргументов
- Функции, статические, локальные, глобальные переменные. Функторы. Указатели и ссылки на функции, обратный вызов.
- Шаблоны функций.
- Контейнеры. Последовательные, ассоциативные, адаптеры. Ranges. Итераторы последовательные, ассоциативные
- Контейнеры. Последовательные, ассоциативные, адаптеры. Ranges
- Пользовательские типы. enum и union
- Введение в ООП. Структуры.
- Структуры. Конструкторы и деструкторы.
- Классы и объекты. Поля, методы.
- Классы и объекты. Конструкторы и деструкторы. Списки инициализации
- Исключения. RAII, правило трех и пяти. Перегрузка операций. Шаблоны классов
- Наследование.
- Абстрактные классы.
- Move семантика
Промежуточная аттестация
- 2026/2027 1st module0.5 * Lab + 0.25 * CW + 0.25 * Contest
- 2026/2027 2nd module0.15 * Contest + 0.15 * CW + 0.3 * Exam + 0.2 * Lab + 0.2 * Colloc
Список литературы
Рекомендуемая основная литература
- Davis, S. R. (2014). C++ For Dummies (Vol. 7th ed). Hoboken: For Dummies. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=784132
- Olsson, M. (2015). C Quick Syntax Reference. [New York]: Apress. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=944034
Рекомендуемая дополнительная литература
- Gregoire, M. (2018). Professional C++ (Vol. Fourth edition). Indianapolis, IN: Wrox. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1729638