![Урфу](/sites/default/files/2022-01/urfu_logo%20%281%29.png)
Программирование на C/C++
Об этом курсе
Основная задача курса – изучения языка С++, как прикладного инструмента решения задач. Курс включает в себя лекции с обратной связью в режиме диалога и лабораторные работы. Лекции содержат базовый обзор языка, принципы объектно- ориентированного программирования применительно к языку, минимальный необходимый набор информации о структурах и алгоритмах обработки данных для решения лабораторных работ.
Лабораторные работы содержат как базовые задачи по организации структур данных, так и расширенные задачи по организации структур для логических игр и алгоритмов работы с ними.
Темы курса
1. Обзор возможностей С++, обзор типов и их размеры, операции с простыми типами, приведения типов, языковые конструкции.
Операции
Условные операторы и циклы
Компиляция, запуск, отладка
Установка Qt Creator
Создание проекта в Qt Creator (qbs). Отладка в Qt Creator.
2. Функции. Синтаксис (объявление, определение, заголовочные файлы).
Передача параметров по значению
Ссылки как способ изменить переданный объект
Ссылки -- способ сэкономить на копировании, const защищает от изменения.
Контейнеры
3. Алгоритмы и лямбды
Видимость и инициализация переменных
4. ООП. Введение в структуры и классы. Объявление, определение, экземпляры. Спецификаторы доступа. Члены данные, члены функции (методы), члены классы, enum-ы. Конструкторы, деструкторы. Наследование. Приведения (явные, неявные, reinterpret_cast). Explicit. Friend класс и функции. Виртуальные функции и принцип их работы. Примеры.
namespace-ы
Работа с файлами и потоками. Перегрузка операторов.
5. Время жизни объектов.
Глобальные объекты программы. Static initialization fiasco.
Что такое singleton. Умные указатели. Семантика переноса.
6. Исключения: порядок работы с исключениями, время жизни объектов, бросаем и ловим, области применения, накладные расходы.
Многопоточность. потоки, синхронизация, мьютексы.
Что такое хэш-таблица, чем она отличается от map.
7. Шаблонные функции. Иснтанциирование. Перегрузка.
Шаблонные классы. Шаблонные методы. Параметры шаблонов. Сериализация.
Паттерны проектирования.
8. Test Driven Development, путь к надёжной программе, тестирование и верификация.
Список лабораторных работ:
- Базовые структуры языка. Взаимодействие с пользователем, ввод, вывод.
- Массивы
- Строки
- Организация списков и очередей
- Организация деревьев и их заполнение
- Игровой бот на дереве решений
- Наследование и полиморфизм
Комментарии
Отлично!
Отлично!
Прикольно
Прикольно
Круто!
Круто!
Отлично!
Отлично!
Мне понравилось!
Мне понравилось!
Оценка курсов Уральский Федеральный Университет
однако, остаются точно также некоторые, наиболее популярные игрушки,
https://ramblermails.
Here is my website https://ramblermails.com/
Добавить комментарий