- Цели и задачи дисциплины
- Преподаваемая дисциплина является средством решения прикладных задач, основой современного подхода к анализу предметной области и проектированию систем. Преподавание и изучение дисциплины следует рассматривать как важную составляющую профессиональной подготовки. Целью преподавания и изучения дисциплины является обучение студентов языку С++, методике разработки программ с использованием технологии объектно-ориентированного программирования. Задачи дисциплины заключаются в том, чтобы студенты получили опыт разработки компьютерных программ на языке С++, могли реализовать на С++ математические алгоритмы; освоили синтаксис и стандартные библиотеки C++; научились адаптировать и использовать шаблоны объектно-ориентированного программирования для решения профессиональных задач.
- Краткое содержание дисциплины
- Основные отличия языка С++ от С. Ссылки. Операции new и delete. Перегрузка функций и аргументы по умолчанию. Ввод-вывод. Пространства имен. Определение класса. Спецификаторы доступа. Определение и вызов методов. Указатель this. Конструкторы. Деструктор. Специальные элементы класса. Друзья класса. Рекомендации по проектированию классов. Перегрузка функций и операций. Правила и форматы перегрузки операций. Шаблоны функций и классов. Отношение наследования между классами в С++. Исключительные ситуации. STL, основные алгоритмы и классы. Роль декомпозиции, абстракции и иерархии в разработке сложной системы. Эволюция объект-ной модели. Концепции ОО подхода: абстрагирование, инкапсуляция, модульность, иерархия, типизация, параллелизм, сохраняемость. Определение объекта. Состояние, поведение и иден-тичность объектов. Определение класса. Отношения между классами. Паттерны проектирования.
- Компетенции обучающегося, формируемые в результате освоения дисциплины
- Выпускник должен обладать:
- ПК-1 Способен активно участвовать в разработке системного и прикладного программного обеспечения
- Образование
- Учебный план 01.03.02, 2022, (4.0), Прикладная математика и информатика
- Объектно-ориентированное программирование