2026/2027





Углубленное программирование на С++
ID 1201875
Статус:
Маго-лего
Кто читает:
Департамент прикладной математики
Когда читается:
1, 2 модуль
Охват аудитории:
для всех кампусов НИУ ВШЭ
Преподаватели:
Сластников Сергей Александрович
Язык:
русский
Кредиты:
6
Контактные часы:
60
Программа дисциплины
Аннотация
На курсе "Углубленное программирование на С++" студенты освоят ключевые концепции программирования на языке С++: основы языка С, синтаксис, переменные, указатели, функции, шаблоны, STL, многопоточность. Отдельное внимание уделяется взаимодействию с операционной системой Linux, организации раздельной компиляции и использованию утилит для управления проектами. Материал курса строится на решении задач, связанных с динамической и статической памятью, разработкой и оптимизацией алгоритмов, включая работу с бинарными деревьями. Практические занятия дисциплины формируют навыки разработки программ, обработки строк и массивов, отладки и тестирования кода. Контроль знаний включает регулярные домашние задания, коллоквиум и итоговый экзамен.
Цель освоения дисциплины
- Обучение основам программирования на языке C/C++, включая изучение синтаксиса, базовых конструкций языка, работу с памятью, файлами, алгоритмами и другими ключевыми концепциями.
Планируемые результаты обучения
- Понимает основы программирования на языке C/C++.
- Умеет работать с Linux и его файловой системой.
- Пишет простые программы на C/C++, используя переменные, условные конструкции, циклы, функции, указатели, массивы и строки.
- Умеет работать с файлами и консольным вводом/выводом.
- Понимает концепции динамической и статической памяти.
- Разрабатывает и отлаживает алгоритмы для строк и массивов.
- Использует структуры и классы, применяет typedef и указатели на функции.
- Организует раздельную компиляцию с помощью make.
- Умеет проводить юнит-тестирование.
Содержание учебной дисциплины
- Название 1: Основы языка C и история C++
- Название 2: Этапы компиляции
- Название 3: Память в C/C++
- Название 4: Функции
- Название 5: Работа с файлами
- Название 6: Структуры и классы
- Семинар перед рубежным контролем
- Название 7: Семантика копирования и перемещения
- Название 8: Шаблоны
- Название 9: Исключения
- Название 10: Стандартная библиотека шаблонов
- Название 11: Многопоточность
- Семинар перед экзаменом
Элементы контроля
- Коллоквиум (макс. 15 баллов)
- SUM_9_Домашние задания (макс. 45 баллов)
- Экзамен (макс. 40 баллов)Экзамен состоит из двух частей: ответов на теоретические вопросы и решения задачи на чтение и написание кода.
Промежуточная аттестация
- 2026/2027 2nd moduleФормула оценивания: Коллоквиум (макс. 15 баллов): Коллоквиум + SUM_9_Домашние задания (макс. 45 баллов): Домашнее задание + Экзамен (макс. 40 баллов): Другое. Итоговая оценка выставляется по сумме набранных баллов за все выполненные задания. Полученные баллы переводятся в 10-балльную оценку ВШЭ: • 10 – от 95 до 100 баллов (отлично, существенно превосходит ожидания) • 9 – от 85 до 94 баллов (отлично, превосходит ожидания) • 8 – от 80 до 84 баллов (отлично) • 7 – от 65 до 79 баллов (хорошо) • 6 – от 60 до 64 баллов (хорошо) • 5 – от 45 до 59 баллов (удовлетворительно) • 4 – от 40 до 44 баллов (удовлетворительно) • 3 – от 25 до 39 баллов (неудовлетворительно) • 2 – от 15 до 24 баллов (неудовлетворительно) • 1 – от 5 до 14 баллов (неудовлетворительно) • 0 – от 0 до 4 баллов (неудовлетворительно)
Список литературы
Рекомендуемая основная литература
- Керниган, Б. В. Язык программирования C : учебник / Б. В. Керниган, Д. М. Ричи. — 2-е изд. — Москва : ИНТУИТ, 2016. — 313 с. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/100543 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
- Мэйерс, С. Эффективное использование C++. 55 верных способов улучшить структуру и код ваших прграмм : руководство / С. Мэйерс. — 3-е изд. — Москва : ДМК Пресс, 2008. — 300 с. — ISBN 5-94074-304-8. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/1245 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
- Чистая архитектура. Искусство разработки программного обеспечения - 978-5-4461-0772-8 - Мартин Р. - 2019 - Санкт-Петербург: Питер - https://ibooks.ru/products/361841 - 361841 - iBOOKS
- Чистый код: создание, анализ и рефакторинг - 978-5-4461-0960-9 - Мартин Роберт - 2019 - Санкт-Петербург: Питер - https://ibooks.ru/products/361844 - 361844 - iBOOKS
Рекомендуемая дополнительная литература
- Принципы юнит-тестирования - 978-5-4461-1683-6 - Владимир Хориков - 2021 - Санкт-Петербург: Питер - https://ibooks.ru/products/373514 - 373514 - iBOOKS