Закреплена за кафедрой | Кафедра информатики |
---|---|
Направление подготовки | 02.03.02. Фундаментальная информатика и информационные технологии |
Форма обучения | Очная |
Общая трудоемкость | 3 ЗЕТ |
Учебный план | 02_03_02_ФИиИТ-4-2020 |
|
|
Распределение часов по семестрам
Курс (семестр) | 2 (3) | Итого | ||
---|---|---|---|---|
Недель | 19 | |||
Вид занятий | УП | РПД | УП | РПД |
Лекции | 18 | 18 | 18 | 18 |
Лабораторные | 24 | 24 | 24 | 24 |
Сам. работа | 39 | 39 | 39 | 39 |
Часы на контроль | 27 | 27 | 27 | 27 |
Итого | 108 | 108 | 108 | 108 |
Визирование РПД для исполнения в очередном учебном году
Рабочая программа пересмотрена, обсуждена и одобрена для
исполнения в 2020-2021 учебном году на заседании
кафедры
Кафедра информатики
Протокол от 22.06.2019 г. № 8
Заведующий кафедрой к.ф.-м.н., доцент Козлов Д.Ю.
1.1. | Цель курса – формирование у студентов необходимой теоретической базы и практических навыков, которые позволят всесторонне и системно видеть этапы и процесс разработки программных продуктов. Базовыми этапами процесса создания программных систем являются анализ и моделирование (проектирование), поэтому вопросам построения проектов посвящен один из основных блоков данного курса. Главная задача курса сформировать целостное представление о методах и подходах объектно-ориентированного анализа и проектирования программно-аппаратных комплексов, помочь овладеть практическим опытом программирования на языке С++ и проектирования программных продуктов с применением унифицированного языка моделирования UML (Unified Modeling Language) в среде Rational Rose. |
---|
Цикл (раздел) ООП: Б1.В |
ОПК-2 | способностью применять в профессиональной деятельности современные языки программирования и языки баз данных, методологии системной инженерии, системы автоматизации проектирования, электронные библиотеки и коллекции, сетевые технологии, библиотеки и пакеты программ, современные профессиональные стандарты информационных технологий |
ПК-8 | способностью применять на практике международные и профессиональные стандарты информационных технологий, современные парадигмы и методологии, инструментальные и вычислительные средства |
В результате освоения дисциплины обучающийся должен | |
3.1. | Знать: |
---|---|
3.1.1. | о различных парадигмах программирования и современном уровне развития языков и технологий программирования; о сложности программных систем и методах ее преодоления; синтаксис и базовые конструкции языков C и С++, основные возможности и приемы программирования на этих языках; принципы структурного и объектно-ориентированного программирования; способы использования библиотеки шаблонов STL; терминологию (понятийный аппарат) объектно-ориентированного анализа, проектирования, программирования и тестирования программных систем; этапы и стадии разработки программных продуктов; базовые принципы объектно-ориентированного моделирования систем и принципы проектирования сложных систем; технологию разработки проекта программной системы на базе унифицированного языка UML; синтаксис и семантику языка UML. |
3.2. | Уметь: |
3.2.1. | разрабатывать алгоритмы решения типичных задач и реализовывать их на языке C/С++; вести разработку в терминах объектно-ориентированной парадигмы программирования с использованием языка С++; использовать различные виды наследования классов, в том числе, виртуального и множественного наследования; использовать стандартные классы библиотеки STL в качестве базовых для разработки прикладных систем выполнять объектно-ориентированный анализ различных предметных областей; применять полученные теоретические знания и практические навыки проектирования программных продуктов в среде Rational Rose; проверять (анализировать) построенный проект на возможные ошибки (логические). |
3.3. | Иметь навыки и (или) опыт деятельности (владеть): |
3.3.1. | современными интегрированными средами разработки; методами объектно-ориентированного программирования с использованием языка С++; современным инструментарием проектирования программных продуктов; методами объектно-ориентированного анализа при проектировании программных продуктов для различных предметных областей; технологией анализа проектов программных продуктов. |
Код занятия | Наименование разделов и тем | Вид занятия | Семестр | Часов | Компетенции | Литература |
---|---|---|---|---|---|---|
Раздел 1. Объектно-ориентированное программирование | ||||||
1.1. | Cовременные технологии программирования. Парадигмы программирования. Процедурный и объектный подход к программированию.Объектно-ориентированная технология разработки программных систем и её принципы. Принципы проектирования сложных систем. | Лекции | 3 | 1 | Л2.1, Л1.1 | |
1.2. | История и назначение языка Си++. Идентификаторы, переменные и константы. Операции и выражения. Приоритет операций.Операторы. Операторы управления. Операторы цикла. Вызов функций.Имена функций. Необязательные аргументы функций. Встроенные типы языка Си++. Массивы, структуры, объединения, указатели. Адресная арифметика. Строки и литералы. | Лекции | 3 | 3 | Л2.1, Л1.1 | |
1.3. | Базовые конструкции языка Си++. Работа с указателями. | Сам. работа | 3 | 10 | Л2.1, Л1.1 | |
1.4. | Базовые конструкции языка Си++. Работа с указателями. | Лабораторные | 3 | 4 | Л2.1, Л1.1 | |
1.5. | Способы описания классов.Понятие класса. Создание объектов. Обращение к атрибутам и методам объектов. Определение методов класса. Переопределение операций. Подписи методов и необязательные аргументы. Запись классов. | Лекции | 3 | 2 | Л2.1, Л1.1 | |
1.6. | Распределение памяти. Проблемы при явном распределении памяти в Си++, способы их решения. Распределение памяти под переменные, управление памятью с помощью переопределения операторов new и delete. Автоматические переменные. Статические переменные. Динамическое выделение памяти. Выделение памяти под строки. Рекомендации по использованию указателей и динамического распределения памяти. Распределение памяти при передаче аргументов функции. Рекомендации по передаче аргументов. | Лекции | 3 | 2 | Л2.1, Л1.1 | |
1.7. | Контроль доступа к объекту. Интерфейс и состояние объекта. Объявление friend. Использование описателя const. Доступ к объекту по чтению и записи. Контроль доступа к атрибутам и методам объекта, контроль по чтению и по записи. | Лекции | 3 | 2 | Л2.1, Л1.1 | |
1.8. | Классы. Атрибуты и методы. Конструкторы. Деструкторы. | Сам. работа | 3 | 14 | Л2.1, Л1.1 | |
1.9. | Классы. Атрибуты и методы. Конструкторы. Деструкторы. | Лабораторные | 3 | 4 | Л2.1, Л1.1 | |
1.10. | Классы – конструкторы и деструкторы. Конструкторы и деструкторы классов. Возможности инициализации объектов. Копирующий конструктор(по умолчанию). Деструкторы. Инициализация объектов. Операции new и delete для классов. | Лекции | 3 | 2 | Л2.1, Л1.1 | |
1.11. | Переопределение операций. Как определять операции. Преобразования типов. Явные преобразования типов.Стандартные преобразования типов. Преобразования указателей и ссылок. Преобразования типов, определенных в программе. | Лекции | 3 | 2 | Л2.1, Л1.1 | |
1.12. | Классы. Перегрузка операторов. | Сам. работа | 3 | 2 | Л2.1, Л1.1 | |
1.13. | Классы. Перегрузка операторов. | Лабораторные | 3 | 6 | Л2.1, Л1.1 | |
1.14. | Производные классы, наследование. Виртуальные методы. Виртуальные методы и переопределение методов. Преобразование базового и производного классов. Внутреннее и защищенное наследование. Абстрактные классы. Множественное наследование. Виртуальное наследование. | Лекции | 3 | 2 | Л2.1, Л1.1 | |
1.15. | Наследование. Дружественность. Статические атрибуты и методы. | Сам. работа | 3 | 11 | Л2.1, Л1.1 | |
1.16. | Наследование. Дружественность. Статические атрибуты и методы. | Лабораторные | 3 | 6 | Л2.1, Л1.1 | |
1.17. | Компоновка программ, препроцессор. Компоновка нескольких файлов в одну программу. Проблема использования общих функций и имен. Использование включаемых файлов. Препроцессор. Определение макросов. Условная компиляция. Дополнительные директивы препроцессора.Шаблоны. Назначение шаблонов. Функции-шаблоны. Шаблоны классов. Стандартная библиотека шаблонов (STL). | Лекции | 3 | 2 | Л2.1, Л1.1 | |
1.18. | Функции-шаблоны. Шаблоны классов. | Сам. работа | 3 | 2 | Л2.1, Л1.1 | |
1.19. | Функции-шаблоны. Шаблоны классов. | Лабораторные | 3 | 4 | Л2.1, Л1.1 |
5.1. Контрольные вопросы и задания для проведения текущего контроля и промежуточной аттестации по итогам освоения дисциплины |
см. приложение |
5.2. Темы письменных работ для проведения текущего контроля (эссе, рефераты, курсовые работы и др.) |
см. приложение |
5.3. Фонд оценочных средств для проведения промежуточной аттестации |
см. приложение |
6.1. Рекомендуемая литература | ||||
6.1.1. Основная литература | ||||
Авторы | Заглавие | Издательство, год | Эл. адрес | |
Л1.1 | Слабнов В. Д. | Программирование на С++: Учебники и учебные пособия для ВУЗов | Познание, 2012 | biblioclub.ru |
6.1.2. Дополнительная литература | ||||
Авторы | Заглавие | Издательство, год | Эл. адрес | |
Л2.1 | Подбельский В.В., Фомин С.С. | Курс программирования на языке Си: Учебники | Издательство "ДМК Пресс", 2012 | e.lanbook.com |
6.2. Перечень ресурсов информационно-телекоммуникационной сети "Интернет" | ||||
Название | Эл. адрес | |||
Э1 | Поисковые системы - yandex.ru, google.com | |||
Э2 | Свободная энциклопедия Википедия – http://ru.wikipedia.org | |||
Э3 | Форум разработчиков программного обеспечения - Stackoverflow.com | |||
Э4 | Интернет-университет информационных технологий. – http://www.intuit.ru | |||
Э5 | Объектно-ориентированное программирование | portal.edu.asu.ru | ||
6.3. Перечень программного обеспечения | ||||
Visual Studio Rational Rose Microsoft Windows Microsoft Office 7-Zip AcrobatReader | ||||
6.4. Перечень информационных справочных систем | ||||
1. Электронная база данных «Scopus» (http://www.scopus.com); 2. Электронная библиотечная система Алтайского государственного университета (http://elibrary.asu.ru/); 3. Научная электронная библиотекаe library(http://elibrary.ru) |
Аудитория | Назначение | Оборудование |
---|---|---|
Помещение для самостоятельной работы | помещение для самостоятельной работы обучающихся | Компьютеры, ноутбуки с подключением к информационно-телекоммуникационной сети «Интернет», доступом в электронную информационно-образовательную среду АлтГУ |
Учебная аудитория | для проведения занятий лекционного типа, занятий семинарского типа (лабораторных и(или) практических), групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации, курсового проектирования (выполнения курсовых работ), проведения практик | Стандартное оборудование (учебная мебель для обучающихся, рабочее место преподавателя, доска) |
107Л | лаборатория информационных технологий - компьютерный класс - учебная аудитория для проведения занятий семинарского типа (лабораторных и(или) практических); проведения групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации | Учебная мебель на 18 посадочных мест; компьютеры: марка HP, модель ProOne 400 - 18 единиц; проектор: марка SMART, модель UF70 - 1 единица; интерактивная доска: марка SMART Board модель SMB680 - 1 единица |
На лекционных занятиях необходимо конспектировать изучаемый материал. - Для систематизации лекционного материала, который будет полезен при подготовке к итоговому контролю знаний, записывайте на каждой лекции тему, вопросы для изучения, рекомендуемую литературу. - В каждом вопросе выделяйте главное, обязательно запишите ключевые моменты (определение, факты, законы, правила и т.д.), подчеркните их. - Если по содержанию материала возникают вопросы, не нужно выкрикивать, запишите их и задайте по окончании лекции или на семинарском занятии. - Перед следующей лекцией обязательно прочитайте предыдущую, чтобы актуализировать знания и осознанно приступить к освоению нового содержания Лабораторные работы, где студенты максимально активно участвуют в практическом приложении изучаемого материала дисциплины. - Самостоятельную подготовку к занятию необходимо начинать с изучения понятийного аппарата темы. Рекомендуем использовать справочную литературу (словари, справочники, энциклопедии), целесообразно создать и вести свой словарь терминов. - Важно запомнить, что любой источник должен нести достоверную информацию, особенно это относится к Internet-ресурсам. При использовании Internet - ресурсов в процессе подготовки не нужно их автоматически «скачивать», они должны быть проанализированы. Не нужно «скачивать» готовые рефераты, так как их однообразие преподаватель сразу выявляет, кроме того, они могут быть сомнительного качества. - В процессе изучения темы анализируйте несколько источников. Используйте периодическую печать - специальные журналы. - Полезным будет работа с электронными учебниками и учебными пособиями в Internet-библиотеках. Зарегистрируйтесь в них: университетская библиотека Онлайн (http://www.biblioclub.ru/) и электронно-библиотечная система «Лань» (http://e.lanbook.com/). - В процессе подготовки и построения решения, поставленных задач, не просто читайте текст учебника, но и выражайте свою личностно-профессиональную оценку прочитанного. - Задания практического характера: продумайте план их выполнения или решения . - При возникновении трудностей в процессе работы взаимодействуйте с преподавателем, консультируйтесь по самостоятельному изучению темы. Самостоятельная работа. - При изучении дисциплины не все вопросы рассматриваются на занятиях, часть вопросов рекомендуется преподавателем для самостоятельного изучения. - Поиск ответов на вопросы и выполнение заданий для самостоятельной работы позволит вам расширить и углубить свои знания по курсу, применить теоретические знания в решении задач практического содержания, закрепить изученное ранее. - Эти задания следует выполнять не «наскоком», а постепенно, планомерно, следуя порядку изучения тем курса. - При возникновении вопросов обратитесь к преподавателю в день консультаций на кафедру. - Выполнив их, проанализируйте качество их выполнения. Это поможет вам развивать умения самоконтроля и оценочные компетенции. Итоговый контроль. - Для подготовки к зачету возьмите перечень примерных вопросов у преподавателя. - В списке вопросов выделите те, которые были рассмотрены на занятиях. Обратитесь к своим записям, выделите существенное. Для более детального изучения изучите рекомендуемую литературу. - Если в списке вопросов есть те, которые не рассматривались на занятии, изучите их самостоятельно. |