2024-2025_b090303_o_1__plx_Объектно-ориентированное программирование
 
Федеральное государственное бюджетное образовательное

учреждение высшего образования

«Бурятская государственная сельскохозяйственная академия имени В.Р. Филиппова»

  Экономический факультет

 
«УТВЕРЖДЕНО»
Декан

Экономический факультет

уч. ст., уч. зв.
 
Баниева М.А.
 
 
 
 
подпись
 
 
 
«СОГЛАСОВАНО»
Заведующий выпускающей кафедрой

Информатика и информационные технологии в экономике

уч. ст., уч. зв.
Садуев Н.Б.
 
 
 
подпись
 
«01» января 2025 г.
 
«01» января 2025 г.
к.ист.н., доцент  
к.ист.н., доцент  
 
Рабочая программа 
Направление 09.03.03 Прикладная информатика

Направленность (профиль) Прикладная информатика в экономике АПК

Дисциплины (модуля)
Б1.В.06 Объектно-ориентированное программирование
 
Информатика и информационные технологии в экономике
Квалификация
бакалавр
Форма обучения
очная
Форма промежуточной аттестации
Зачет
Объём дисциплины в З.Е.
3
Продолжительность в часах/неделях
108/ 0  
Статус дисциплины

в учебном плане

относится к обязательной части блока 1 "Дисциплины" ОПОП

является дисциплиной обязательной для изучения

Обеспечивающая преподавание дисциплины кафедра
 
Улан-Удэ, 20__г.
 
Распределение часов дисциплины
Курс 2

Семестр 4

Количество часов
Итого
Вид занятий
УП
УП
Лекционные занятия
36
36
Лабораторные занятия
54
54
Контактная работа
90
90
Сам. работа
18
18
Итого
108
108
 
Программу составил(и):
 
кфмн, Садуев Нима Батодоржиевич
 
 
Объектно-ориентированное программирование
Программа дисциплины
 
разработана в соответствии с ФГОС ВО:
- Федеральный государственный образовательный стандарт высшего образования - бакалавриат по направлению подготовки 09.03.03 Прикладная информатика (приказ Минобрнауки России от 19.09.2017 г. № 922);
 
- 06.015. Профессиональный стандарт "СПЕЦИАЛИСТ ПО ИНФОРМАЦИОННЫМ СИСТЕМАМ", утверждённый приказом Министерства труда и социальной защиты Российско Федерации от 18 ноября 2014 г. N 896н (зарегистрирован Министерством юстиции Российской Федерации 24 декабря 2014 г., регистрационный N 35361);
 
b090303_o_1..plx
составлена на основании учебного плана:
 
утвержденного Ученым советом вуза от 01.01.1754 протокол № 
 
Протокол №   от

Зав. кафедрой Садуев Н.Б.

Информатика и информационные технологии в экономике
Программа одобрена на заседании кафедры
Председатель методической комиссии   Экономический факультет
Рабочая программа рассмотрена и одобрена на заседании методической комиссии   Экономический факультет от «__» _______________ 20__г., протокол №___
уч. ст., уч. зв.
 
 
подпись
 
И.О. Фамилия
 
подпись
 

п/п

Учебный год
Одобрено

на заседании кафедры

Утверждаю

Заведующий кафедрой

Садуев Н.Б.

протокол
Дата
Подпись
Дата
20__/20__ г.г.
№____
«__»__20__г.
«__»__20__г.
1
20__/20__ г.г.
№____
«__»__20__г.
«__»__20__г.
2
20__/20__ г.г.
№____
«__»__20__г.
«__»__20__г.
3
20__/20__ г.г.
№____
«__»__20__г.
«__»__20__г.
4
20__/20__ г.г.
№____
«__»__20__г.
«__»__20__г.
5
 
подпись
 
И.О. Фамилия
 
Внешний эксперт

(представитель работодателя)

 
 
ЦЕЛИ И ЗАДАЧИ ДИСЦИПЛИНЫ (МОДУЛЯ)
1
Цели: формирование теоретических знаний и практических навыков применения языков программирования высокого уровня для разработки программных приложений; развитие навыков программирования и использования персонального компьютера на высоком пользовательском уровне

Задачи: Изучить базовые концепции ООП: классы, объекты, наследование, полиморфизм, инкапсуляция.

Научить проектировать и адаптировать ПО с использованием паттернов проектирования и современных фреймворков.

Развить умения работы с базами данных, структурами данных и тестированием кода.

 
ЭТАПЫ ФОРМИРОВАНИЯ КОМПЕТЕНЦИЙ И МЕСТО ДИСЦИПЛИНЫ (МОДУЛЯ) В СТРУКТУРЕ ОБРАЗОВАТЕЛЬНОЙ ПРОГРАММЫ
Блок.Часть
Б1.В
ПКС-2: способность разрабатывать и адаптировать прикладное программное обеспечение
 
Дисциплины (модули) и практики, для которых освоение данной практики необходимо как предшествующее:
 
Производственная практика 
1
8 семестр
 
Преддипломная практика 
2
8 семестр
 
Выполнение и защита выпускной квалификационной работы 
3
8 семестр
 
Прикладные решения для 1С: Предприятие 
4
6 семестр
 
Программирование на Ruby 
5
7 семестр
 
ОПИСАНИЕ ПОКАЗАТЕЛЕЙ, КРИТЕРИЕВ И ШКАЛ ОЦЕНИВАНИЯ КОМПЕТЕНЦИЙ В РАМКАХ ДИСЦИПЛИНЫ (МОДУЛЯ)
 
КОД И НАЗВАНИЕ КОМПЕТЕНЦИИ

ПКС-2: способность разрабатывать и адаптировать прикладное программное обеспечение;

Знает языки программирования и приемы работы с базами данных

Умеет кодировать на языках программирования

Владеет навыками разработки прототипа ИС в соответствии с требованиями

 
Знать и понимать  способы разработки прикладного программного обеспечения; современные объектно-ориентированные языки программирования; способы тестирования приложений; объектно-ориентированный подход в программировании приложений; регламенты кодирования на объектно-ориентированном языке программирования.

:

 
Не знает языки программирования и приемы работы с базами данных
Уровень 1 
 
Знает частично языки программирования и приемы работы с базами данных
Уровень 2 
 
Знает хорошо языки программирования и приемы работы с базами данных
Уровень 3 
 
Знает в полном объеме языки программирования и приемы работы с базами данных
Уровень 4 
 
 
Уметь делать (действовать)  кодировать на объектно-ориентированном языке программирования; разрабатывать прикладное программное обеспечение; программировать приложения для решения прикладных задач.:
 
Не умеет кодировать на языках программирования
Уровень 1 
 
Умеет частично кодировать на языках программирования
Уровень 2 
 
Умеет хорошо кодировать на языках программирования Умеет достаточно кодировать на языках программирования
Уровень 3 
 
Умеет достаточно кодировать на языках программирования
Уровень 4 
 
 
Владеть навыками (иметь навыки) способность разрабатывать прикладное программное обеспечение; способностью программировать приложения для решения прикладных задач.

:

 
Не владеет навыками разработки прототипа ИС в соответствии с требованиями
Уровень 1 
 
Владеет частично навыками разработки прототипа ИС в соответствии с требованиями
Уровень 2 
 
Владеет хорошо навыками разработки прототипа ИС в соответствии с требованиями
Уровень 3 
 
Владеет в самостоятельно навыками разработки прототипа ИС в соответствии с требованиями
Уровень 4 
 
 
 
Уровни сформированности компетенций
Оценка «хорошо» - уровень 3
Оценка «отлично» - уровень 4
Оценка «неудовлетворительно» - уровень 1
Оценка «удовлетворительно» - уровень 2
Оценки формирования компентенций
средний
высокий
компетенция не сформирована
минимальный
Характеристика сформированности компетенции
Сформированность компетенции в целом соответствует требованиям. Имеющихся знаний, умений, навыков и мотивации в целом достаточно для решения стандартных практических (профессиональных) задач
Сформированность компетенции полностью соответствует требованиям. Имеющихся знаний, умений, навыков и мотивации в полной мере достаточно для решения сложных практических (профессиональных) задач
Компетенция в полной мере не сформирована. Имеющихся знаний, умений и навыков недостаточно для решения практических (профессиональных) задач
Сформированность компетенции соответствует минимальным требованиям. Имеющихся знаний, умений, навыков в целом достаточно для решения практических (профессиональных) задач
 
СОДЕРЖАНИЕ ДИСЦИПЛИНЫ
Код занятия
Наименование разделов (этапов) и тем
Семестр
Часов
Компетенции
Интеракт.
Примечание (используемые интерактивные формы,

форма текущего контроля успеваемости)

Вид

работ

 
Раздел 1. Методология программирования.
 
1.1
Методологии программирования
4
4
ПКС-2
Лек
 
1.2
Структурный подход к программированию
4
4
Лек
 
1.3
Модульное программирование
4
4
2
Лек
 
1.4
Методологии программирования
4
6
Лаб
 
1.5
Структурный подход к программированию
4
4
Лаб
 
1.6
Модульное программирование
4
6
2
Лаб
 
1.7
Методологии программирования
4
2
Ср
 
1.8
Структурный подход к программированию
4
2
Ср
 
1.9
Модульное программирование
4
2
Ср
 
Раздел 2. Объектно-ориентированное программирование
 
2.1
Введение в объектно-ориентированное программирование
4
8
Лек
 
2.2
Наследование
4
2
2
Лек
 
2.3
Рекурсия
4
6
Лек
 
2.4
Программирование графического пользовательского интерфейса
4
8
Лек
 
2.5
Введение в объектно-ориентированное программирование
4
8
Лаб
 
2.6
Наследование
4
8
Лаб
 
2.7
Рекурсия
4
10
4
Лаб
 
2.8
Программирование графического пользовательского интерфейса
4
12
2
Лаб
 
2.9
Введение в объектно-ориентированное программирование
4
2
Ср
 
2.10
Наследование
4
2
Ср
 
2.11
Рекурсия
4
5
Ср
 
2.12
Программирование графического пользовательского интерфейса
4
3
Ср
 
ПЕРЕЧЕНЬ УЧЕБНОЙ ЛИТЕРАТУРЫ И РЕСУРСОВ СЕТИ "ИНТЕРНЕТ", НЕОБХОДИМЫХ ДЛЯ ПРОВЕДЕНИЯ ДИСЦИПЛИНЫ (МОДУЛЯ)
ПЕРЕЧЕНЬ УЧЕБНОЙ ЛИТЕРАТУРЫ
 
Основная литература
 
Барков И. А. Объектно-ориентированное программирование [Электронный ресурс]:учебник для вузов. - Санкт-Петербург: Лань, 2023. - 700 – Режим доступа: https://e.lanbook.com/book/329549 
Л1.1
 
Унгер А. Ю. Объектно-ориентированное программирование: шаблоны классов [Электронный ресурс]:учебное пособие. - Москва: РТУ МИРЭА, 2023. - 68 – Режим доступа: https://e.lanbook.com/book/382451 
Л1.2
 
 
Дополнительная литература
 
Букунов С. В., Букунова О. В. Разработка приложений с графическим пользовательским интерфейсом на языке Python [Электронный ресурс]:учебное пособие для вузов. - Санкт-Петербург: Лань, 2023. - 88 – Режим доступа: https://e.lanbook.com/book/292856 
Л2.1
 
Авсеева О. В., Чернышов М. К. Объектно-ориентированное программирование. Часть 1 [Электронный ресурс]:учебно-методическое пособие. - Воронеж: ВГУ, 2021. - 82 – Режим доступа: https://e.lanbook.com/book/454691 
Л2.2
 
 
Методическая литература
 
Карякин М.И., Ватульян К.А., Мнухин Р.М. Технологии программирования и компьютерный практикум на языке Python [Электронный ресурс]:Учебное пособие. - Ростов-на-Дону: Издательство Южного федерального университета (ЮФУ), 2022. - 242 – Режим доступа: https://znanium.com/catalog/document?id=429844 
Л3.1
 
 
Номер аудитории
Назначение
Оборудование и ПО
Адрес
МАТЕРИАЛЬНО-ТЕХНИЧЕСКОЕ ОБЕСПЕЧЕНИЕ УЧЕБНОГО ПРОЦЕССА ПО ДИСЦИПЛИНЕ (МОДУЛЮ)
 
451
Учебная аудитория для проведения занятий лекционного типа (Кабинет финансов, денежного обращения и кредитов) (Кабинет экономической теории) (451)
96 посадочных мест, рабочее место преподавателя, оснащенные учебной мебелью, доска учебная, персональный компьютер с возможностью подключения к сети Интернет и доступом в ЭИОС, видеостена. 1 стенд. Лицензионное ПО: Kaspersky Endpoint Security, Microsoft Windows Vista Business Russian Upgrade Academic OPEN No Level, Microsoft OfficeProPlus 2016 RUS OLP NL Acdmc.
670024, Республика Бурятия, г. Улан-Удэ, ул. Пушкина, д. №8 , Библиотечно-информационный корпус
 
530
Учебная аудитория для проведения занятий лекционного типа, занятий семинарского типа, курсового проектирования (выполнения курсовых работ), групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации (530)
30 посадочных мест, рабочее место преподавателя, оснащенные учебной мебелью, мобильный компьютерный класс ICLab – 30 ноутбуков,  ПК с подключением к сети Интернет и доступом в ЭИОС – 1 шт., документ-камера,  интерактивная панель, доска с рельсовой системой регулирования, учебно-лабораторный стенд «Промышленный Интернет вещей», учебный лабораторный набор «Интернет вещей в сельском хозяйстве», комплекты 
670024, Республика Бурятия, г. Улан-Удэ, ул. Пушкина, д. №8 , Библиотечно-информационный корпус
 
учебно-лабораторного оборудования: «Изучение работы блоков ПК», «Элементы систем автоматики и вычислительной техники», «Построение, настройка и эксплуатация компьютерной сети». Лицензионное ПО: Astra Linux Special Edition, Усиленный («Воронеж») РУСБ.10015-01 (ФСТЭК), Kaspersky Endpoint Security для бизнеса, Microsoft OfficeStd 2016 RUS OLP NL Acdmc. Microsoft OfficeProPlus 2016 RUS OLP NL Acdmc. Microsoft Windows Vista Business Russian Upgrade Academic OPEN No Level, Виртуальный лабораторный комплекс «Интернет вещей в сельском хозяйстве». Свободно распространяемое ПО: LibreOffice, Язык программирования Python, Язык статистической обработки данных R, Системы программирования Anaconda3(64-bit), GPSS World Student, Виртуальная машина VirtualBox.
 
452
Помещение для самостоятельной работы обучающихся, курсового проектирования выполнения курсовых работ (452)
15 посадочных мест, рабочее место преподавателя, оснащенные учебной мебелью, ПК с подключением к сети Интернет и доступом в ЭИОС– 10 шт., стенды, доска магнитная офисная. Лицензионное ПО: Astra Linux Special Edition вариант лицензирования «Орел», Kaspersky Endpoint Security для бизнеса, Microsoft OfficeStd 2016 RUS OLP NL Acdmc. Microsoft OfficeProPlus 2016 RUS OLP NL Acdmc. Microsoft Windows Vista Business Russian Upgrade Academic OPEN No Level Свободно распространяемое ПО: LibreOffice, Векторный редактор Inkscape, Графический редактор Gimp, Blender3D для 3D-моделирования, Язык программирования Python, Язык статистической обработки данных R, Системы программирования Anaconda3(64-bit), GPSS World Student, СУБД MySql, Программа для моделирования Ramus Educational, Программа для моделирования StarUML, Виртуальная машина VirtualBox. 
670024, Республика Бурятия, г. Улан-Удэ, ул. Пушкина, д. №8 , Библиотечно-информационный корпус
 
ПЕРЕЧЕНЬ РЕСУРСОВ ИНФОРМАЦИОННО-ТЕЛЕКОММУНИКАЦИОННОЙ СЕТИ ИНТЕРНЕТ И ЛОКАЛЬНЫХ СЕТЕЙ АКАДЕМИИ, НЕОБХОДИММЫХ ДЛЯ ОСВОЕНИЯ ДИСЦИПЛИНЫ (МОДУЛЯ)
Наименование 
Доступ
1. Удаленные электронные сетевые учебные ресурсы временного доступа, сформированные на основании прямых договоров с правообладателями (электронно-библиотечные системы - ЭБС)
1

2
3. Электронные учебные и учебно-методические ресурсы, подготовленные в академии:
Электронно-библиотечная система Издательства «Znanium»
http://znanium.ru/
Электронно-библиотечная система Издательства «Лань»
http://e.lanbook.com/
Электронно-библиотечная система Издательства «Юрайт»
http://urait.ru/
Объектно-ориентированное программирование : лабораторный практикум для обучающихся по направлению подготовки 09.03.03 «Прикладная информатика» направленность «Прикладная информатика в экономике АПК» / Н. Б. Садуев, Ю. С. Верхотурова ; М-во сел. хоз-ва РФ, Бурятская ГСХА им. В. Р. Филиппова. - Улан-Удэ : ФГБОУ ВО БГСХА, 2015. - 59 с. - URL: http://bgsha.ru/art.php?i=1225.
2. Электронные сетевые ресурсы открытого доступа (профессиональные базы данных, массовые открытые онлайн-курсы и пр.):

1

2
Платформа «Открытое образование» (онлайн-курсы по базовым дисциплинам, изучаемым в российских университетах)
https://openedu.ru/course/
Профессиональные базы данных
http://e.lanbook.com/
 
ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ, ИСПОЛЬЗУЕМЫЕ ПРИ ОСУЩЕСТВЛЕНИИ ОБРАЗОВАТЕЛЬНОГО ПРОЦЕССА ПО ДИСЦИПЛИНЕ (МОДУЛЮ), ВКЛЮЧАЯ ПЕРЕЧЕНЬ ПРОГРАММНОГО ОБСПЕЧЕНИЯ И ИНФОРМАЦИОННЫХ СПРАВОЧНЫХ СИСТЕМ
1. Программные продукты, необходимые для освоения учебной дисциплины
Наименование программного продукты (ПП)
Виды учебных занятий и работ, в которых используется данный продукт
Microsoft OfficeStd 2016 RUS OLP NL Acdmc. Договор № ПП-61/2015 г. О поставке программных продуктов от 9 декабря 2015 года

Microsoft OfficeProPlus 2016 RUS OLP NL Acdmc. Договор № ПП-61/2015 г. О поставке программных продуктов от 9 декабря 2015 года

Microsoft Windows Vista Business Russian Upgrade Academic OPEN No Level Государственный контракт № 25 от 1 апреля 2008 года

Занятия семинарского типа, самостоятельная работа 
 
2. Информационные справочные системы, необходимые для реализации учебного процесса
Информационно-правовой портал «Гарант»
в локальной сети академии

http://www.garant.ru/

Справочно-поисковая система «Консультант Плюс»
http://www.consultant.ru/
 
 
Наименование ЭИОС и доступ
Виды учебных занятий и работ, в которых используется данная система
Доступ
1

2
3
Официальный сайт академии
http://bgsha.ru/
Занятия лекционного типа, семинарского типа, самостоятельная работа
Личный кабинет
http://lk.bgsha.ru/
Занятия лекционного типа, семинарского типа, самостоятельная работа
АС Деканат
в локальной сети академии
-
Корпоративный портал академии
http:/portal.bgsha.ru/
Занятия лекционного типа, семинарского типа, самостоятельная работа
ИС «Планы»
в локальной сети академии
-
Портфолио обучающегося
http://lk.bgsha.ru/
Самостоятельная работа
Сайт научной библиотеки
http:/elib.bgsha.ru/
Занятия лекционного типа, семинарского типа, самостоятельная работа
Электронная библиотека БГСХА
http:/elib.bgsha.ru/
Занятия лекционного типа, семинарского типа, самостоятельная работа
3. Информационно-образовательные системы (ЭИОС)
 
КАДРОВОЕ ОБЕСПЕЧЕНИЕ УЧЕБНОГО ПРОЦЕССА ПО ДИСЦИПЛИНЕ (МОДУЛЯ)
ФИО преподавателя
Ученая степень, ученое звание
Уровень образования. Специальность и квалификация в соответствии с дипломом. Профессиональная переподготовка
1
2
3
 
Садуев Нима Батодоржиевич
доц.
кфмн
 
ОБЕСПЕЧЕНИЕ УЧЕБНОГО ПРОЦЕССА ПО ДИСЦИПЛИНЕ (МОДУЛЮ) ДЛЯ ИНВАЛИДОВ И ЛИЦ С 
 
ОГРАНИЧЕННЫМИМ ВОЗМОЖНОСТЯМИ ЗДОРОВЬЯ
Организационно-педагогическое, психолого-педагогическое сопровождение обучающихся инвалидов и лиц с ограниченными возможностями здоровья осуществляется на основании соответствующей рекомендации в заключении психолого-медико-педагогической комиссии или индивидуальной программе реабилитации инвалида. Академия, по заявлению обучающегося, создает специальные условия для получения высшего образования инвалидами и лицам с ограниченными возможностями здоровья:

- использование специализированных (адаптированных) рабочих программ дисциплин (модулей) и методов обучения и воспитания, включая наличие альтернативной версии официального сайта организации в сети «Интернет» для слабовидящих;

- использование специальных учебников, учебных пособий и других учебно-методических материалов, включая альтернативные форматы печатных материалов (крупный шрифт или аудиофайлы);

- использование специальных технических средств обучения (мультимедийное оборудование, оргтехника и иные средства) коллективного и индивидуального пользования, включая установку

мониторов с возможностью трансляции субтитров, обеспечение надлежащими звуковыми

воспроизведениями информации;

- предоставление услуг ассистента (при необходимости), оказывающего обучающимся необходимую техническую помощь или услуги сурдопереводчиков / тифлосурдопереводчиков;

- проведение групповых и индивидуальных коррекционных занятий для разъяснения отдельных вопросов изучаемой дисциплины (модуля);

- проведение процедуры оценивания результатов обучения возможно с учетом особенностей нозологий (устно, письменно на бумаге, письменно на компьютере, в форме тестирования и т.п.) при использовании доступной формы предоставления заданий оценочных средств и ответов на задания (в печатной форме увеличенным шрифтом, в форме аудиозаписи, в форме электронного документа, задания зачитываются ассистентом, задания предоставляются с использованием сурдоперевода) с

использованием дополнительного времени для подготовки ответа;

- обеспечение беспрепятственного доступа обучающимся в учебные помещения, туалетные и другие помещения организации, а также пребывания в указанных помещениях (наличие пандусов, поручней, расширенных дверных проемов и других приспособлений);

- обеспечение сочетания онлайн и офлайн технологий, а также индивидуальных и коллективных форм работы в учебном процессе, осуществляемом с использованием дистанционных образовательных технологий;

- и другие условия, без которых невозможно или затруднено освоение ОПОП ВО.

В целях реализации ОПОП ВО в академии оборудована безбарьерная среда, учитывающая потребности лиц с нарушением зрения, с нарушениями слуха, с нарушениями опорно-двигательного

аппарата. Территория соответствует условиям беспрепятственного, безопасного и удобного передвижения инвалидов и лиц с ограниченными возможностями здоровья. Вход в учебный корпус

оборудован пандусами, стекла входных дверей обозначены специальными знаками для слабовидящих, используется система Брайля. Сотрудники охраны знают порядок действий при прибытии в академию лица с ограниченными возможностями. В академии создана толерантная социокультурная среда, осуществляется необходимое сопровождение образовательного процесса,

при необходимости предоставляется волонтерская помощь обучающимся инвалидам и лицам с ограниченными возможностями здоровья.

 
1. Оценочные материалы по дисциплине (модулю) являются обязательным обособленным приложением к Рабочей программе дисциплины (модуля) и представлены в виде оценочных средств.

2. Оценочные материалы является составной частью нормативно-методического обеспечения системы оценки качества освоения обучающимися указанной дисциплины (модуля).

3. При помощи оценочных материалов осуществляется контроль и управление процессом формирования обучающимися компетенций, из числа предусмотренных ФГОС ВО в качестве результатов освоения дисциплины (модуля).

4. Оценочные материалы по дисциплине (модулю) включают в себя:

- оценочные средства, применяемые при промежуточной аттестации по итогам изучения дисциплины (модуля).

- оценочные средства, применяемые в рамках индивидуализации выполнения, контроля фиксированных видов ВАРО;

- оценочные средства, применяемые для текущего контроля;

5. Разработчиками оценочных материалов по дисциплине (модулю) являются преподаватели кафедры, обеспечивающей изучение обучающимися дисциплины (модуля), в Академии. Содержательной основой для разработки оценочных материалов является Рабочая программа дисциплины (модуля).

ВВЕДЕНИЕ
 
1. Перечень вопросов к зачету,

2. Комплект контрольных вопросов для проведения устных опросов,

3. Комплект заданий для лабораторных работ,

4. Комплект заданий для самостоятельной работы обучающихся,

5. Комплект тестовых заданий

6. Кейс-задания

Перечень видов оценочных средств
 
Нормативная база проведения промежуточной аттестации обучающихся по результатам изучения дисциплины:

Объектно-ориентированное программирование

Средства для промежуточной аттестации по итогам изучения дисциплины
1) действующее «Положение о текущем контроле успеваемости и промежуточной аттестации обучающихся ФГБОУ ВО Бурятская ГСХА»
Основные характеристикипромежуточной аттестации обучающихся по итогам изучения дисциплины (модуля)

УДАЛИТЕ НЕНУЖНЫЙ
 
1
2
Цель промежуточной аттестации - 
установление уровня достижения каждым обучающимся целей обучения по данной дисциплине 
Форма промежуточной аттестации -   

Экзамен
Место экзамена в графике учебного процесса:  

1) подготовка к экзамену и сдача экзамена осуществляется за счёт учебного времени (трудоёмкости), отведённого на экзаменационную сессию для обучающихся, сроки которой устанавливаются приказом по академии
Форма экзамена - 
2) дата, время и место проведения экзамена определяется графиком сдачи экзаменов, утверждаемым деканом факультета (директором института)
Процедура проведения экзамена -
(Письменный, устный)
Экзаменационная программа по учебной дисциплине:
представлена в оценочных материалах по дисциплине
1) представлена в оценочных материалах по дисциплине

2) охватывает все разделы дисциплины

1
2
Форма промежуточной аттестации - 
зачёт / дифференцированный зачет
Место  процедуры получения зачёта в графике  учебного процесса  
1) участие обучающегося в процедуре получения зачёта   осуществляется за счёт  учебного времени (трудоёмкости), отведённого на изучение дисциплины
Основные условия получения обучающимся зачёта:
2) процедура проводится  в рамках ВАРО, на последней неделе семестра  
1) обучающийся  выполнил все виды учебной работы (включая самостоятельную) и отчитался об их выполнении в сроки, установленные графиком учебного процесса по дисциплине
Основные характеристики промежуточной аттестации обучающихся по итогам изучения дисциплины

Цель промежуточной аттестации - 
установление уровня достижения каждым обучающимся целей обучения по данной дисциплине 
 
ФОНД ОЦЕНОЧНЫХ СРЕДСТВ
Перечень вопросов к зачету

1. Основные парадигмы программирования: процедурное, структурное, объектно-ориентированное программирование.

2. Методология разработки программного обеспечения.

3. Основные понятия объектно-ориентированного программирования: класс, объект, метод, переменные экземпляра, интерфейс, наследование, полиморфизм, инкапсуляция.

4. Три базовых принципа ООП: инкапсуляция, наследование, полиморфизм.

5. Области видимости переменных, статические переменные.

6. Объектно-ориентированный анализ и проектирование: цели, основные понятия и терминология.

7. Основы UML (унифицированного языка моделирования) для описания объектно-ориентированных систем.

8. Жизненный цикл объекта, идентичность, состояние и поведение объектов.

9. Отношения между объектами: ассоциация, агрегация, композиция.

10. Структура классов, абстрактные классы и интерфейсы.

11. Модификаторы доступа к классам и членам класса.

12. Полиморфизм: статический и динамический, виртуальные методы.

13. Исключения и обработка исключительных ситуаций в ООП.

14. Основы программирования графического пользовательского интерфейса с использованием объектно-ориентированного подхода.

15. Особенности реализации ООП в языках программирования C++, Java, Python.

16. Средства абстракции и инкапсуляции в ООП.

17. Принципы модульности и раздельной компиляции.

18. Использование шаблонов (generics) и параметризованных классов.

19. Основы компонентно-ориентированного программирования.

20. Практические задачи: разработка программ с использованием ООП, кодирование на объектно-ориентированных языках.

21. Расскажите об объектно-ориентированном программировании и его основных принципах.

22. Дайте характеристику метода пошаговой детализации и декомпозиции.

23. Что такое наследование и как оно реализуется в ООП?

24. Объясните понятия полиморфизма и инкапсуляции.

25. Какие существуют уровни доступа к членам класса?

26. Что такое абстрактный класс и интерфейс?

27. Как реализуется обработка исключений в ООП?

28. Опишите структуру программы на языке C++ или Java с точки зрения ООП.

29. Что такое жизненный цикл объекта и как он управляется?

30. Объясните понятие композиции и агрегации.

31. Какие средства предоставляет язык Java для поддержки параллелизма?

32. Как реализуется объектно-ориентированный подход при создании пользовательского интерфейса?

33. Опишите этапы разработки программных систем с использованием ООП.

34. Парадигмы программирования

35. Структурный подход:

 
36. Модульное программирование

37. Класс и объект

38. Атрибуты и методы

39. Конструктор и деструктор

40. Инкапсуляция

41. Наследование

42. Полиморфизм

43. Абстракция

44. Композиция и агрегация

45. Работа с коллекциями объектов

46. Перегрузка операторов

47. Итераторы и генераторы

48. Обработка исключений

49. Модули и пакеты

50. Работа с файлами

51. Основы GUI на Python

52. ООП и базы данных

53. Тестирование ООП-программ

54. Документирование кода

55. Принципы SOLID в Python

Комплект контрольных вопросов для устных опросов

1. Методологии программирования

1. Назовите основные парадигмы программирования. В чем их различия?

2. В чем суть структурного подхода к программированию? Приведите примеры.

3. Что такое модульное программирование? Как реализуются модули в Python?

2. Основы объектно-ориентированного программирования (ООП)

4. Дайте определение понятиям «класс» и «объект». Как они реализуются в Python?

5. Перечислите и кратко охарактеризуйте основные принципы ООП.

6. Что такое инкапсуляция? Как реализуется сокрытие данных в Python?

7. В чем заключается наследование? Приведите пример наследования в Python.

8. Объясните понятие полиморфизма. Как реализовать полиморфизм в Python?

9. Что такое абстракция? Как создать абстрактный класс в Python?

10. Чем отличаются атрибуты класса и атрибуты экземпляра?

3. Практические аспекты ООП

11. Как реализуются методы класса, статические методы и методы экземпляра?

12. Для чего используется функция super()? Приведите пример её использования.

13. Что такое множественное наследование? Как оно реализуется в Python?

14. Как в Python реализовать перегрузку операторов? Приведите пример.

15. Объясните разницу между public, protected и private атрибутами в Python.

16. Что такое композиция и агрегация объектов? Приведите примеры.

4. Работа с исключениями и структурами данных

17. Как осуществляется обработка исключений в Python? Приведите пример.

18. Как создать собственный класс исключения?

19. Как работать с коллекциями объектов (списки, словари, множества)?

5. Программирование графического пользовательского интерфейса (GUI)

20. Какие библиотеки используются для создания GUI на Python?

21. Приведите пример создания простого окна с помощью Tkinter.

22. Как реализовать обработку событий в графическом приложении?

6. Проектирование и тестирование программ

23. Как использовать UML-диаграммы для проектирования ООП-систем?

24. В чем суть паттернов проектирования? Приведите пример паттерна и его реализации в Python.

25. Как организовать тестирование программ на Python? Какие модули для этого используются?

7. Прикладные аспекты

26. Как реализовать взаимодействие ООП-программы с базой данных?

27. В чем преимущества применения ООП для решения прикладных задач в экономике?

28. Как реализовать сериализацию объектов в Python?

8. Современные тенденции и стандарты

29. Какие стандарты оформления и документирования кода применяются в Python?

30. В чем суть принципов SOLID и как их применять на практике?

Комплект заданий для лабораторных работ

Лабораторная работа 1. Основы структурного и модульного программирования

• Задание 1: Реализуйте простую программу на Python для вычисления суммы и произведения элементов списка, используя функции.

• Задание 2: Сгруппируйте несколько функций в отдельный модуль, импортируйте его в основной файл и используйте реализованные функции.

Лабораторная работа 2. Классы и объекты

 
• Задание 1: Определите класс Employee с атрибутами (имя, должность, зарплата) и методами для вывода информации и изменения зарплаты.

• Задание 2: Создайте несколько объектов класса, выведите их данные, измените зарплату одному из сотрудников.

Лабораторная работа 3. Инкапсуляция и уровни доступа

• Задание 1: Реализуйте класс BankAccount с приватными атрибутами (номер счета, баланс) и методами для внесения и снятия средств.

• Задание 2: Продемонстрируйте попытку прямого доступа к приватным атрибутам и объясните результат.

Лабораторная работа 4. Наследование

• Задание 1: Создайте базовый класс Person (имя, возраст), от него - класс Student (добавьте атрибут «группа») и класс Teacher (добавьте атрибут «предмет»).

• Задание 2: Реализуйте методы вывода информации для каждого класса, создайте объекты-наследники.

Лабораторная работа 5. Полиморфизм и перегрузка методов

• Задание 1: Реализуйте классы Rectangle и Circle с методом area(), возвращающим площадь. Продемонстрируйте полиморфизм при вызове метода для разных объектов.

• Задание 2: Перегрузите оператор сложения для класса Vector (методы __add__ и __str__).

Лабораторная работа 6. Абстракция и абстрактные классы

• Задание 1: Используйте модуль abc для создания абстрактного класса Shape с абстрактным методом area(). Реализуйте наследников: Triangle, Square.

• Задание 2: Попробуйте создать объект абстрактного класса и объясните результат.

Лабораторная работа 7. Исключения и обработка ошибок

• Задание 1: Реализуйте функцию деления двух чисел с обработкой деления на ноль.

• Задание 2: Создайте собственный класс исключения для обработки некорректных данных при создании объекта.

Лабораторная работа 8. Работа с коллекциями объектов

• Задание 1: Создайте список объектов класса Product (название, цена, количество). Реализуйте функции для подсчета общей стоимости товаров и поиска самого дорогого товара.

• Задание 2: Используйте словарь для хранения и поиска объектов по ключу (например, по коду товара).

Лабораторная работа 9. Итераторы и генераторы

• Задание 1: Реализуйте собственный класс-итератор для перебора элементов коллекции.

• Задание 2: Напишите генератор для получения последовательности Фибоначчи.

Лабораторная работа 10. Программирование графического интерфейса (GUI)

• Задание 1: Создайте простое окно с кнопкой и полем ввода с помощью библиотеки Tkinter.

• Задание 2: Реализуйте обработку событий (например, нажатие кнопки выводит текст из поля ввода).

Лабораторная работа 11. Модули, пакеты и структура проекта

• Задание 1: Организуйте проект из нескольких модулей и пакета. Импортируйте классы и функции из разных файлов.

• Задание 2: Используйте относительный импорт и проверьте структуру проекта.

Лабораторная работа 12. Тестирование и документирование

• Задание 1: Напишите простые тесты для своих классов с помощью модуля unittest.

• Задание 2: Оформите документацию к своим классам и методам с помощью docstring.

Рекомендации по оформлению лабораторных работ

• Каждая работа должна содержать: цель, задание, исходный код, результаты выполнения, выводы.

• По каждой лабораторной работе рекомендуется подготовить отчет с примерами кода и комментариями.

• В качестве дополнительных заданий можно предложить студентам модифицировать задания под прикладные задачи экономики и АПК.

Пример оформления лабораторной работы по ООП на Python с разделами: цель, задание, исходный код, результаты выполнения, выводы. Такой шаблон можно использовать для всех лабораторных работ, меняя содержание по теме.

Лабораторная работа №4. Наследование в Python

1. Цель работы

Освоить основные принципы наследования в объектно-ориентированном программировании на языке Python, научиться создавать базовые и производные классы, использовать переопределение методов.

2. Задание

1. Реализовать базовый класс Person с атрибутами: имя, возраст.

2. Создать производный класс Student, добавив атрибут «группа».

3. Создать производный класс Teacher, добавив атрибут «предмет».

4. Для каждого класса реализовать метод вывода информации.

5. Создать объекты каждого класса, вывести их данные.

3. Исходный код

python

class Person:

    def __init__(self, name, age):

        self.name = name

        self.age = age

    def show_info(self):

        print(f"Имя: {self.name}, Возраст: {self.age}")

 

class Student(Person):

    def __init__(self, name, age, group):

        super().__init__(name, age)

        self.group = group

    def show_info(self):

        print(f"Студент: {self.name}, Возраст: {self.age}, Группа: {self.group}")

class Teacher(Person):

    def __init__(self, name, age, subject):

        super().__init__(name, age)

        self.subject = subject

    def show_info(self):

        print(f"Преподаватель: {self.name}, Возраст: {self.age}, Предмет: {self.subject}")

# Создание объектов

person = Person("Иван", 40)

student = Student("Анна", 19, "ПИ-21")

teacher = Teacher("Петр", 55, "Информатика")

# Вывод информации

person.show_info()

student.show_info()

teacher.show_info()

4. Результаты выполнения

Результат работы программы:

text

Имя: Иван, Возраст: 40

Студент: Анна, Возраст: 19, Группа: ПИ-21

Преподаватель: Петр, Возраст: 55, Предмет: Информатика

5. Выводы

В ходе лабораторной работы были освоены базовые принципы наследования в Python. Реализованы базовый и производные классы с переопределением методов. Полученные навыки позволяют строить иерархии классов для решения прикладных задач, что повышает читаемость и расширяемость кода.

Шаблон для других лабораторных работ

1. Цель работы:

(Кратко указать, чему научиться и что освоить)

2. Задание:

(Пошаговое описание задания)

3. Исходный код:

(Привести код программы)

4. Результаты выполнения:

(Вставить скриншот или текстовый вывод программы)

5. Выводы:

(Кратко описать, что получилось, какие знания и навыки были приобретены)

Комплект заданий для самостоятельной работы обучающихся

1. Методология программирования и структурный подход

Задание 1:

Подготовить краткое эссе (1–2 страницы) на тему «Преимущества и недостатки структурного и объектно-ориентированного подходов к программированию».

Результат: Текстовый файл с эссе.

Задание 2:

Реализовать на Python программу для вычисления факториала числа с использованием рекурсии и итерации. Сравнить оба подхода.

Результат: Исходный код и краткий анализ отличий.

2. Модульное программирование

Задание 3:

Разбить собственную программу (например, калькулятор или обработчик данных) на несколько модулей. Описать структуру модулей и принципы их взаимодействия.

Результат: Исходный код, схема структуры, пояснительная записка.

3. Основы объектно-ориентированного программирования

Задание 4:

Создать класс «Товар» (Product) с атрибутами: название, цена, количество. Реализовать методы для изменения цены и количества, а также метод для вывода информации о товаре.

Результат: Исходный код, примеры работы программы.

 
Задание 5:

Составить сравнительную таблицу реализации принципов ООП (инкапсуляция, наследование, полиморфизм) в Python и любом другом языке (например, Java или C++).

Результат: Таблица (doc/pdf).

4. Наследование и полиморфизм

Задание 6:

Реализовать иерархию классов:

• Базовый класс «Персона» (Person)

• Производные классы: «Студент» (Student), «Преподаватель» (Teacher)

Добавить специфические атрибуты и методы для каждого класса.

Результат: Исходный код, примеры создания объектов и вызова методов.

Задание 7:

Реализовать пример полиморфизма: создать несколько классов с одинаковым методом, вызываемым через общий интерфейс.

Результат: Исходный код, пояснения.

5. Исключения и обработка ошибок

Задание 8:

Написать программу, в которой реализована обработка стандартных и пользовательских исключений (например, при вводе некорректных данных).

Результат: Исходный код, пример работы программы.

6. Работа с коллекциями объектов

Задание 9:

Создать список объектов класса «Товар» (Product) и реализовать функции:

• Поиск самого дорогого товара

• Подсчет общей стоимости всех товаров

Результат: Исходный код, демонстрация работы функций.

7. Программирование графического пользовательского интерфейса (GUI)

Задание 10:

Разработать простое графическое приложение на Python (например, калькулятор или форму ввода данных) с использованием библиотеки Tkinter.

Результат: Исходный код, скриншот работы программы.

8. Тестирование и документирование

Задание 11:

Написать юнит-тесты для одного из своих классов с использованием модуля unittest.

Результат: Исходный код тестов, результаты их выполнения.

Задание 12:

Оформить документацию к одному из своих классов с помощью docstring.

Результат: Пример кода с docstring, сгенерированная документация (по желанию).

9. Прикладные и творческие задания

Задание 13:

Разработать мини-проект (например, система учета заказов, библиотека, склад) с использованием ООП. Описать структуру классов, реализовать основные методы.

Результат: Исходный код, схема классов, краткое описание проекта.

Задание 14:

Подготовить презентацию (5–7 слайдов) на тему «Современные тенденции развития объектно-ориентированного программирования».

Результат: Презентация (ppt/pdf).

Комплект тестовых заданий

Блок 1. Знать

1. Какой из перечисленных языков программирования является объектно-ориентированным?

А) Pascal

Б) Python

В) Assembler

Г) Basic

Ответ: Б

2. Основной единицей ООП является:

А) Функция

Б) Массив

В) Класс

Г) Модуль

Ответ: В

3. Какой принцип ООП отвечает за сокрытие деталей реализации?

А) Наследование

Б) Полиморфизм

В) Инкапсуляция

Г) Абстракция

Ответ: В

 
4. Какой метод является конструктором в Python?

А) del

Б) init

В) new

Г) str

Ответ: Б

5. Какой символ в Python используется для обозначения приватного атрибута?

А) $

Б) _

В) #

Г) %

Ответ: Б

6. Какой принцип ООП позволяет одному интерфейсу использоваться для разных типов объектов?

А) Абстракция

Б) Наследование

В) Полиморфизм

Г) Инкапсуляция

Ответ: В

7. Какой модуль Python используется для создания абстрактных классов?

А) abc

Б) math

В) random

Г) sys

Ответ: А

8. Какой метод вызывается при удалении объекта?

А) init

Б) del

В) str

Г) call

Ответ: Б

9. Какой тип наследования поддерживается в Python?

А) Только одиночное

Б) Только множественное

В) Одиночное и множественное

Г) Наследование не поддерживается

Ответ: В

10. Какой из перечисленных методов является статическим?

А) @staticmethod

Б) @classmethod

В) @property

Г) @private

Ответ: А

11. Какой метод используется для строкового представления объекта?

А) str

Б) init

В) call

Г) del

Ответ: А

12. Какой принцип ООП позволяет создавать новые классы на основе существующих?

А) Инкапсуляция

Б) Наследование

В) Полиморфизм

Г) Абстракция

Ответ: Б

13. Какой из перечисленных типов данных является изменяемым?

А) Кортеж

Б) Строка

В) Список

Г) Число

Ответ: В

14. Какой метод используется для перегрузки оператора сложения в Python?

А) add

Б) sum

В) plus

Г) append

Ответ: А

15. Какой декоратор используется для объявления метода класса?

А) @staticmethod

 
Б) @classmethod

В) @property

Г) @private

Ответ: Б

16. Какой модификатор доступа отсутствует в Python?

А) public

Б) private

В) protected

Г) friend

Ответ: Г

17. Какой метод используется для итерации по объекту?

А) iter

Б) next

В) call

Г) str

Ответ: А

18. Что такое атрибут экземпляра класса?

А) Переменная, общая для всех объектов

Б) Переменная, уникальная для каждого объекта

В) Локальная переменная

Г) Глобальная переменная

Ответ: Б

19. Какой метод вызывается при приведении объекта к строке функцией str()?

А) str

Б) repr

В) init

Г) call

Ответ: А

20. Какой тип данных используется для хранения уникальных элементов?

А) Список

Б) Множество

В) Кортеж

Г) Словарь

Ответ: Б

Блок 2. Знать, Уметь

21. Как создать объект класса в Python?

А) obj = ClassName()

Б) obj = ClassName

В) obj = new ClassName()

Г) obj = ClassName.create()

Ответ: А

22. Как обратиться к атрибуту объекта?

А) object[attribute]

Б) object.attribute

В) object->attribute

Г) attribute.object

Ответ: Б

23. Как объявить приватный атрибут в классе Python?

А) attribute

Б) attribute

В) attribute

Г) attribute

Ответ: Б

24. Как вызвать родительский метод в дочернем классе?

А) parent.method()

Б) super().method()

В) self.method()

Г) base.method()

Ответ: Б

25. Как добавить новый элемент в список?

А) list.add()

Б) list.append()

В) list.insert()

Г) list.push()

Ответ: Б

26. Как обработать исключение в Python?

А) try-catch

Б) try-except

 
В) try-catch-finally

Г) catch-except

Ответ: Б

27. Как создать собственное исключение?

А) class MyError(Exception): pass

Б) def MyError(Exception): pass

В) exception MyError: pass

Г) class MyError: pass

Ответ: А

28. Как импортировать модуль mymodule?

А) include mymodule

Б) import mymodule

В) using mymodule

Г) require mymodule

Ответ: Б

29. Как реализовать множественное наследование?

А) class A(B, C):

Б) class A < B, C:

В) class A : B, C

Г) class A inherits B, C

Ответ: А

30. Как создать свой итератор?

А) Реализовать методы iter и next

Б) Реализовать метод call

В) Реализовать метод str

Г) Реализовать метод add

Ответ: А

31. Как вызвать метод экземпляра внутри класса?

А) self.method()

Б) this.method()

В) method()

Г) class.method()

Ответ: А

32. Какой метод используется для удаления элемента из списка по значению?

А) remove()

Б) pop()

В) del()

Г) delete()

Ответ: А

33. Какой метод используется для получения длины списка?

А) size()

Б) len()

В) length()

Г) count()

Ответ: Б

34. Какой тип данных используется для хранения пар "ключ-значение"?

А) Список

Б) Множество

В) Словарь

Г) Кортеж

Ответ: В

35. Какой оператор используется для проверки принадлежности элемента к коллекции?

А) in

Б) is

В) has

Г) with

Ответ: А

36. Какой метод используется для чтения строки из файла?

А) read()

Б) readline()

В) readlines()

Г) Все перечисленные

Ответ: Г

37. Какой метод используется для записи строки в файл?

А) write()

Б) print()

В) writeline()

Г) insert()

 
Ответ: А

38. Какой метод используется для закрытия файла?

А) close()

Б) exit()

В) end()

Г) finish()

Ответ: А

39. Как создать генератор в Python?

А) Использовать ключевое слово yield

Б) Использовать ключевое слово return

В) Использовать ключевое слово generate

Г) Использовать ключевое слово create

Ответ: А

40. Какой модуль используется для написания юнит-тестов?

А) unittest

Б) test

В) testing

Г) pytest

Ответ: А

Блок 3. Знать, Уметь, Владеть

41. Какой из вариантов корректно реализует паттерн "Одиночка" (Singleton) в Python?

А) Использовать статический атрибут класса

Б) Использовать приватный конструктор

В) Использовать модуль как синглтон

Г) Все перечисленные

Ответ: Г

42. Какой подход используется для организации больших проектов в Python?

А) Использование модулей и пакетов

Б) Использование только одного файла

В) Использование глобальных переменных

Г) Использование только функций

Ответ: А

43. Какой принцип SOLID требует, чтобы класс имел только одну причину для изменения?

А) Open/Closed Principle

Б) Single Responsibility Principle

В) Liskov Substitution Principle

Г) Dependency Inversion Principle

Ответ: Б

44. Какой способ используется для сериализации объекта в Python?

А) pickle

Б) json

В) marshal

Г) Все перечисленные

Ответ: Г

45. Какой модуль используется для работы с графическим интерфейсом в стандартной библиотеке?

А) tkinter

Б) gui

В) qt

Г) wxpython

Ответ: А

46. Какой подход обеспечивает повторное использование кода?

А) Наследование

Б) Инкапсуляция

В) Полиморфизм

Г) Все перечисленные

Ответ: Г

47. Какой метод используется для проверки типа объекта?

А) isinstance()

Б) type()

В) class()

Г) object()

Ответ: А

48. Какой способ позволяет реализовать интерфейс в Python?

А) Использование абстрактного класса

Б) Использование протоколов

В) Использование duck typing

Г) Все перечисленные

Ответ: Г

 
49. Какой способ позволяет документировать класс?

А) Docstring

Б) Комментарии

В) Внешняя документация

Г) Все перечисленные

Ответ: Г

50. Какой способ позволяет повысить безопасность кода?

А) Использование инкапсуляции

Б) Использование приватных атрибутов

В) Использование проверки типов

Г) Все перечисленные

Ответ: Г

Кейс-задания

Кейс-задание 1. Автоматизация учета товаров на складе

Ситуация:

Ваша компания занимается оптовой торговлей. Необходимо автоматизировать учет товаров на складе. Требуется реализовать систему, позволяющую:

• хранить информацию о товарах (название, категория, цена, количество),

• добавлять новые товары,

• изменять количество и цену товара,

• формировать отчет о наличии товаров и общей стоимости запасов.

Задание:

1. Разработайте структуру классов для решения задачи (например, Product, Warehouse).

2. Реализуйте методы для добавления, изменения и отображения информации о товарах.

3. Протестируйте работу программы на примере 3-5 товаров.

4. Сформулируйте выводы о преимуществах применения ООП для подобных задач.

Кейс-задание 2. Система управления заказами в интернет-магазине

Ситуация:

Интернет-магазин принимает заказы на различные товары. Каждый заказ содержит сведения о клиенте, списке товаров, общей стоимости и статусе заказа (новый, в обработке, выполнен).

Задание:

1. Определите классы для моделирования предметной области (Order, Customer, Product).

2. Реализуйте методы для добавления товаров в заказ, изменения статуса заказа, расчета общей стоимости.

3. Предусмотрите обработку ошибок (например, попытка добавить несуществующий товар).

4. Протестируйте систему на примере 2-3 заказов.

Кейс-задание 3. Учёт сотрудников и расчет зарплаты

Ситуация:

В компании работают сотрудники разных должностей (менеджер, бухгалтер, программист). Для каждого сотрудника необходимо хранить ФИО, должность, оклад, а также рассчитывать зарплату с учетом премии или надбавки.

Задание:

1. Разработайте иерархию классов для сотрудников с учетом наследования.

2. Реализуйте методы для расчета зарплаты с учетом индивидуальных надбавок.

3. Реализуйте вывод общей ведомости по зарплате.

4. Протестируйте на примере 3-4 сотрудников разных должностей.

Кейс-задание 4. Программирование графического интерфейса (GUI) для учета клиентов

Ситуация:

Требуется создать простое приложение с графическим интерфейсом (на базе Tkinter), позволяющее:

• добавлять клиентов (ФИО, телефон, e-mail),

• отображать список клиентов,

• искать клиента по фамилии.

Задание:

1. Разработайте классы для хранения данных о клиентах.

2. Реализуйте основные функции интерфейса (добавление, просмотр, поиск).

3. Протестируйте приложение, добавив 3-5 клиентов.

Кейс-задание 5. Анализ и визуализация данных

Ситуация:

Вам даны данные о продажах товаров за месяц (название, количество, выручка). Необходимо проанализировать данные и построить график (использовать matplotlib).

Задание:

1. Создайте класс для хранения информации о продажах.

2. Реализуйте методы для анализа (суммарная выручка, топ-3 товара по продажам).

3. Постройте график выручки по каждому товару.

4. Сделайте выводы по результатам анализа.

Рекомендации по оформлению кейса

1. Анализ ситуации:

Кратко опишите, какие классы и методы необходимы для решения задачи.

2. Проектирование:

 
Нарисуйте схему классов (UML-диаграмма - по желанию).

3. Реализация:

Приведите фрагменты кода (основные классы, методы).

4. Тестирование:

Покажите примеры работы программы (вывод, скриншоты).

5. Выводы:

Опишите, какие преимущества дало применение ООП, с какими трудностями столкнулись, как их решили.

 
Перечень вопросов к зачету

1. Основные парадигмы программирования: процедурное, структурное, объектно-ориентированное программирование.

2. Методология разработки программного обеспечения.

3. Основные понятия объектно-ориентированного программирования: класс, объект, метод, переменные экземпляра, интерфейс, наследование, полиморфизм, инкапсуляция.

4. Три базовых принципа ООП: инкапсуляция, наследование, полиморфизм.

5. Области видимости переменных, статические переменные.

6. Объектно-ориентированный анализ и проектирование: цели, основные понятия и терминология.

7. Основы UML (унифицированного языка моделирования) для описания объектно-ориентированных систем.

8. Жизненный цикл объекта, идентичность, состояние и поведение объектов.

9. Отношения между объектами: ассоциация, агрегация, композиция.

10. Структура классов, абстрактные классы и интерфейсы.

11. Модификаторы доступа к классам и членам класса.

12. Полиморфизм: статический и динамический, виртуальные методы.

13. Исключения и обработка исключительных ситуаций в ООП.

14. Основы программирования графического пользовательского интерфейса с использованием объектно-ориентированного подхода.

15. Особенности реализации ООП в языках программирования C++, Java, Python.

16. Средства абстракции и инкапсуляции в ООП.

17. Принципы модульности и раздельной компиляции.

18. Использование шаблонов (generics) и параметризованных классов.

19. Основы компонентно-ориентированного программирования.

20. Практические задачи: разработка программ с использованием ООП, кодирование на объектно-ориентированных языках.

21. Расскажите об объектно-ориентированном программировании и его основных принципах.

22. Дайте характеристику метода пошаговой детализации и декомпозиции.

23. Что такое наследование и как оно реализуется в ООП?

24. Объясните понятия полиморфизма и инкапсуляции.

25. Какие существуют уровни доступа к членам класса?

26. Что такое абстрактный класс и интерфейс?

27. Как реализуется обработка исключений в ООП?

28. Опишите структуру программы на языке C++ или Java с точки зрения ООП.

29. Что такое жизненный цикл объекта и как он управляется?

30. Объясните понятие композиции и агрегации.

31. Какие средства предоставляет язык Java для поддержки параллелизма?

32. Как реализуется объектно-ориентированный подход при создании пользовательского интерфейса?

33. Опишите этапы разработки программных систем с использованием ООП.

34. Парадигмы программирования

35. Структурный подход:

36. Модульное программирование

37. Класс и объект

38. Атрибуты и методы

39. Конструктор и деструктор

40. Инкапсуляция

41. Наследование

42. Полиморфизм

43. Абстракция

44. Композиция и агрегация

45. Работа с коллекциями объектов

46. Перегрузка операторов

47. Итераторы и генераторы

48. Обработка исключений

49. Модули и пакеты

50. Работа с файлами

51. Основы GUI на Python

52. ООП и базы данных

53. Тестирование ООП-программ

Контрольные вопросы и задания для проведения текущего контроля и промежуточной аттестации по итогам освоения дисциплины (модуля)
 
54. Документирование кода

55. Принципы SOLID в Python

Комплект контрольных вопросов для устных опросов

1. Методологии программирования

1. Назовите основные парадигмы программирования. В чем их различия?

2. В чем суть структурного подхода к программированию? Приведите примеры.

3. Что такое модульное программирование? Как реализуются модули в Python?

2. Основы объектно-ориентированного программирования (ООП)

4. Дайте определение понятиям «класс» и «объект». Как они реализуются в Python?

5. Перечислите и кратко охарактеризуйте основные принципы ООП.

6. Что такое инкапсуляция? Как реализуется сокрытие данных в Python?

7. В чем заключается наследование? Приведите пример наследования в Python.

8. Объясните понятие полиморфизма. Как реализовать полиморфизм в Python?

9. Что такое абстракция? Как создать абстрактный класс в Python?

10. Чем отличаются атрибуты класса и атрибуты экземпляра?

3. Практические аспекты ООП

11. Как реализуются методы класса, статические методы и методы экземпляра?

12. Для чего используется функция super()? Приведите пример её использования.

13. Что такое множественное наследование? Как оно реализуется в Python?

14. Как в Python реализовать перегрузку операторов? Приведите пример.

15. Объясните разницу между public, protected и private атрибутами в Python.

16. Что такое композиция и агрегация объектов? Приведите примеры.

4. Работа с исключениями и структурами данных

17. Как осуществляется обработка исключений в Python? Приведите пример.

18. Как создать собственный класс исключения?

19. Как работать с коллекциями объектов (списки, словари, множества)?

5. Программирование графического пользовательского интерфейса (GUI)

20. Какие библиотеки используются для создания GUI на Python?

21. Приведите пример создания простого окна с помощью Tkinter.

22. Как реализовать обработку событий в графическом приложении?

6. Проектирование и тестирование программ

23. Как использовать UML-диаграммы для проектирования ООП-систем?

24. В чем суть паттернов проектирования? Приведите пример паттерна и его реализации в Python.

25. Как организовать тестирование программ на Python? Какие модули для этого используются?

7. Прикладные аспекты

26. Как реализовать взаимодействие ООП-программы с базой данных?

27. В чем преимущества применения ООП для решения прикладных задач в экономике?

28. Как реализовать сериализацию объектов в Python?

8. Современные тенденции и стандарты

29. Какие стандарты оформления и документирования кода применяются в Python?

30. В чем суть принципов SOLID и как их применять на практике?

Комплект заданий для лабораторных работ

Лабораторная работа 1. Основы структурного и модульного программирования

• Задание 1: Реализуйте простую программу на Python для вычисления суммы и произведения элементов списка, используя функции.

• Задание 2: Сгруппируйте несколько функций в отдельный модуль, импортируйте его в основной файл и используйте реализованные функции.

Лабораторная работа 2. Классы и объекты

• Задание 1: Определите класс Employee с атрибутами (имя, должность, зарплата) и методами для вывода информации и изменения зарплаты.

• Задание 2: Создайте несколько объектов класса, выведите их данные, измените зарплату одному из сотрудников.

Лабораторная работа 3. Инкапсуляция и уровни доступа

• Задание 1: Реализуйте класс BankAccount с приватными атрибутами (номер счета, баланс) и методами для внесения и снятия средств.

• Задание 2: Продемонстрируйте попытку прямого доступа к приватным атрибутам и объясните результат.

Лабораторная работа 4. Наследование

• Задание 1: Создайте базовый класс Person (имя, возраст), от него - класс Student (добавьте атрибут «группа») и класс Teacher (добавьте атрибут «предмет»).

• Задание 2: Реализуйте методы вывода информации для каждого класса, создайте объекты-наследники.

Лабораторная работа 5. Полиморфизм и перегрузка методов

• Задание 1: Реализуйте классы Rectangle и Circle с методом area(), возвращающим площадь. Продемонстрируйте полиморфизм при вызове метода для разных объектов.

• Задание 2: Перегрузите оператор сложения для класса Vector (методы __add__ и __str__).

Лабораторная работа 6. Абстракция и абстрактные классы

• Задание 1: Используйте модуль abc для создания абстрактного класса Shape с абстрактным методом area(). 

 
Реализуйте наследников: Triangle, Square.

• Задание 2: Попробуйте создать объект абстрактного класса и объясните результат.

Лабораторная работа 7. Исключения и обработка ошибок

• Задание 1: Реализуйте функцию деления двух чисел с обработкой деления на ноль.

• Задание 2: Создайте собственный класс исключения для обработки некорректных данных при создании объекта.

Лабораторная работа 8. Работа с коллекциями объектов

• Задание 1: Создайте список объектов класса Product (название, цена, количество). Реализуйте функции для подсчета общей стоимости товаров и поиска самого дорогого товара.

• Задание 2: Используйте словарь для хранения и поиска объектов по ключу (например, по коду товара).

Лабораторная работа 9. Итераторы и генераторы

• Задание 1: Реализуйте собственный класс-итератор для перебора элементов коллекции.

• Задание 2: Напишите генератор для получения последовательности Фибоначчи.

Лабораторная работа 10. Программирование графического интерфейса (GUI)

• Задание 1: Создайте простое окно с кнопкой и полем ввода с помощью библиотеки Tkinter.

• Задание 2: Реализуйте обработку событий (например, нажатие кнопки выводит текст из поля ввода).

Лабораторная работа 11. Модули, пакеты и структура проекта

• Задание 1: Организуйте проект из нескольких модулей и пакета. Импортируйте классы и функции из разных файлов.

• Задание 2: Используйте относительный импорт и проверьте структуру проекта.

Лабораторная работа 12. Тестирование и документирование

• Задание 1: Напишите простые тесты для своих классов с помощью модуля unittest.

• Задание 2: Оформите документацию к своим классам и методам с помощью docstring.

Рекомендации по оформлению лабораторных работ

• Каждая работа должна содержать: цель, задание, исходный код, результаты выполнения, выводы.

• По каждой лабораторной работе рекомендуется подготовить отчет с примерами кода и комментариями.

• В качестве дополнительных заданий можно предложить студентам модифицировать задания под прикладные задачи экономики и АПК.

Пример оформления лабораторной работы по ООП на Python с разделами: цель, задание, исходный код, результаты выполнения, выводы. Такой шаблон можно использовать для всех лабораторных работ, меняя содержание по теме.

Лабораторная работа №4. Наследование в Python

1. Цель работы

Освоить основные принципы наследования в объектно-ориентированном программировании на языке Python, научиться создавать базовые и производные классы, использовать переопределение методов.

2. Задание

1. Реализовать базовый класс Person с атрибутами: имя, возраст.

2. Создать производный класс Student, добавив атрибут «группа».

3. Создать производный класс Teacher, добавив атрибут «предмет».

4. Для каждого класса реализовать метод вывода информации.

5. Создать объекты каждого класса, вывести их данные.

3. Исходный код

python

class Person:

    def __init__(self, name, age):

        self.name = name

        self.age = age

    def show_info(self):

        print(f"Имя: {self.name}, Возраст: {self.age}")

class Student(Person):

    def __init__(self, name, age, group):

        super().__init__(name, age)

        self.group = group

    def show_info(self):

        print(f"Студент: {self.name}, Возраст: {self.age}, Группа: {self.group}")

class Teacher(Person):

    def __init__(self, name, age, subject):

        super().__init__(name, age)

        self.subject = subject

    def show_info(self):

        print(f"Преподаватель: {self.name}, Возраст: {self.age}, Предмет: {self.subject}")

# Создание объектов

 
person = Person("Иван", 40)

student = Student("Анна", 19, "ПИ-21")

teacher = Teacher("Петр", 55, "Информатика")

# Вывод информации

person.show_info()

student.show_info()

teacher.show_info()

4. Результаты выполнения

Результат работы программы:

text

Имя: Иван, Возраст: 40

Студент: Анна, Возраст: 19, Группа: ПИ-21

Преподаватель: Петр, Возраст: 55, Предмет: Информатика

5. Выводы

В ходе лабораторной работы были освоены базовые принципы наследования в Python. Реализованы базовый и производные классы с переопределением методов. Полученные навыки позволяют строить иерархии классов для решения прикладных задач, что повышает читаемость и расширяемость кода.

Шаблон для других лабораторных работ

1. Цель работы:

(Кратко указать, чему научиться и что освоить)

2. Задание:

(Пошаговое описание задания)

3. Исходный код:

(Привести код программы)

4. Результаты выполнения:

(Вставить скриншот или текстовый вывод программы)

5. Выводы:

(Кратко описать, что получилось, какие знания и навыки были приобретены)

Комплект заданий для самостоятельной работы обучающихся

1. Методология программирования и структурный подход

Задание 1:

Подготовить краткое эссе (1–2 страницы) на тему «Преимущества и недостатки структурного и объектно-ориентированного подходов к программированию».

Результат: Текстовый файл с эссе.

Задание 2:

Реализовать на Python программу для вычисления факториала числа с использованием рекурсии и итерации. Сравнить оба подхода.

Результат: Исходный код и краткий анализ отличий.

2. Модульное программирование

Задание 3:

Разбить собственную программу (например, калькулятор или обработчик данных) на несколько модулей. Описать структуру модулей и принципы их взаимодействия.

Результат: Исходный код, схема структуры, пояснительная записка.

3. Основы объектно-ориентированного программирования

Задание 4:

Создать класс «Товар» (Product) с атрибутами: название, цена, количество. Реализовать методы для изменения цены и количества, а также метод для вывода информации о товаре.

Результат: Исходный код, примеры работы программы.

Задание 5:

Составить сравнительную таблицу реализации принципов ООП (инкапсуляция, наследование, полиморфизм) в Python и любом другом языке (например, Java или C++).

Результат: Таблица (doc/pdf).

4. Наследование и полиморфизм

Задание 6:

Реализовать иерархию классов:

• Базовый класс «Персона» (Person)

• Производные классы: «Студент» (Student), «Преподаватель» (Teacher)

Добавить специфические атрибуты и методы для каждого класса.

Результат: Исходный код, примеры создания объектов и вызова методов.

Задание 7:

Реализовать пример полиморфизма: создать несколько классов с одинаковым методом, вызываемым через общий интерфейс.

Результат: Исходный код, пояснения.

5. Исключения и обработка ошибок

Задание 8:

Написать программу, в которой реализована обработка стандартных и пользовательских исключений (например, при 

 
вводе некорректных данных).

Результат: Исходный код, пример работы программы.

6. Работа с коллекциями объектов

Задание 9:

Создать список объектов класса «Товар» (Product) и реализовать функции:

• Поиск самого дорогого товара

• Подсчет общей стоимости всех товаров

Результат: Исходный код, демонстрация работы функций.

7. Программирование графического пользовательского интерфейса (GUI)

Задание 10:

Разработать простое графическое приложение на Python (например, калькулятор или форму ввода данных) с использованием библиотеки Tkinter.

Результат: Исходный код, скриншот работы программы.

8. Тестирование и документирование

Задание 11:

Написать юнит-тесты для одного из своих классов с использованием модуля unittest.

Результат: Исходный код тестов, результаты их выполнения.

Задание 12:

Оформить документацию к одному из своих классов с помощью docstring.

Результат: Пример кода с docstring, сгенерированная документация (по желанию).

9. Прикладные и творческие задания

Задание 13:

Разработать мини-проект (например, система учета заказов, библиотека, склад) с использованием ООП. Описать структуру классов, реализовать основные методы.

Результат: Исходный код, схема классов, краткое описание проекта.

Задание 14:

Подготовить презентацию (5–7 слайдов) на тему «Современные тенденции развития объектно-ориентированного программирования».

Результат: Презентация (ppt/pdf).

Комплект тестовых заданий

Блок 1. Знать

1. Какой из перечисленных языков программирования является объектно-ориентированным?

А) Pascal

Б) Python

В) Assembler

Г) Basic

Ответ: Б

2. Основной единицей ООП является:

А) Функция

Б) Массив

В) Класс

Г) Модуль

Ответ: В

3. Какой принцип ООП отвечает за сокрытие деталей реализации?

А) Наследование

Б) Полиморфизм

В) Инкапсуляция

Г) Абстракция

Ответ: В

4. Какой метод является конструктором в Python?

А) del

Б) init

В) new

Г) str

Ответ: Б

5. Какой символ в Python используется для обозначения приватного атрибута?

А) $

Б) _

В) #

Г) %

Ответ: Б

6. Какой принцип ООП позволяет одному интерфейсу использоваться для разных типов объектов?

А) Абстракция

Б) Наследование

В) Полиморфизм

Г) Инкапсуляция

Ответ: В

 
7. Какой модуль Python используется для создания абстрактных классов?

А) abc

Б) math

В) random

Г) sys

Ответ: А

8. Какой метод вызывается при удалении объекта?

А) init

Б) del

В) str

Г) call

Ответ: Б

9. Какой тип наследования поддерживается в Python?

А) Только одиночное

Б) Только множественное

В) Одиночное и множественное

Г) Наследование не поддерживается

Ответ: В

10. Какой из перечисленных методов является статическим?

А) @staticmethod

Б) @classmethod

В) @property

Г) @private

Ответ: А

11. Какой метод используется для строкового представления объекта?

А) str

Б) init

В) call

Г) del

Ответ: А

12. Какой принцип ООП позволяет создавать новые классы на основе существующих?

А) Инкапсуляция

Б) Наследование

В) Полиморфизм

Г) Абстракция

Ответ: Б

13. Какой из перечисленных типов данных является изменяемым?

А) Кортеж

Б) Строка

В) Список

Г) Число

Ответ: В

14. Какой метод используется для перегрузки оператора сложения в Python?

А) add

Б) sum

В) plus

Г) append

Ответ: А

15. Какой декоратор используется для объявления метода класса?

А) @staticmethod

Б) @classmethod

В) @property

Г) @private

Ответ: Б

16. Какой модификатор доступа отсутствует в Python?

А) public

Б) private

В) protected

Г) friend

Ответ: Г

17. Какой метод используется для итерации по объекту?

А) iter

Б) next

В) call

Г) str

Ответ: А

18. Что такое атрибут экземпляра класса?

А) Переменная, общая для всех объектов

 
Б) Переменная, уникальная для каждого объекта

В) Локальная переменная

Г) Глобальная переменная

Ответ: Б

19. Какой метод вызывается при приведении объекта к строке функцией str()?

А) str

Б) repr

В) init

Г) call

Ответ: А

20. Какой тип данных используется для хранения уникальных элементов?

А) Список

Б) Множество

В) Кортеж

Г) Словарь

Ответ: Б

Блок 2. Знать, Уметь

21. Как создать объект класса в Python?

А) obj = ClassName()

Б) obj = ClassName

В) obj = new ClassName()

Г) obj = ClassName.create()

Ответ: А

22. Как обратиться к атрибуту объекта?

А) object[attribute]

Б) object.attribute

В) object->attribute

Г) attribute.object

Ответ: Б

23. Как объявить приватный атрибут в классе Python?

А) attribute

Б) attribute

В) attribute

Г) attribute

Ответ: Б

24. Как вызвать родительский метод в дочернем классе?

А) parent.method()

Б) super().method()

В) self.method()

Г) base.method()

Ответ: Б

25. Как добавить новый элемент в список?

А) list.add()

Б) list.append()

В) list.insert()

Г) list.push()

Ответ: Б

26. Как обработать исключение в Python?

А) try-catch

Б) try-except

В) try-catch-finally

Г) catch-except

Ответ: Б

27. Как создать собственное исключение?

А) class MyError(Exception): pass

Б) def MyError(Exception): pass

В) exception MyError: pass

Г) class MyError: pass

Ответ: А

28. Как импортировать модуль mymodule?

А) include mymodule

Б) import mymodule

В) using mymodule

Г) require mymodule

Ответ: Б

29. Как реализовать множественное наследование?

А) class A(B, C):

Б) class A < B, C:

 
В) class A : B, C

Г) class A inherits B, C

Ответ: А

30. Как создать свой итератор?

А) Реализовать методы iter и next

Б) Реализовать метод call

В) Реализовать метод str

Г) Реализовать метод add

Ответ: А

31. Как вызвать метод экземпляра внутри класса?

А) self.method()

Б) this.method()

В) method()

Г) class.method()

Ответ: А

32. Какой метод используется для удаления элемента из списка по значению?

А) remove()

Б) pop()

В) del()

Г) delete()

Ответ: А

33. Какой метод используется для получения длины списка?

А) size()

Б) len()

В) length()

Г) count()

Ответ: Б

34. Какой тип данных используется для хранения пар "ключ-значение"?

А) Список

Б) Множество

В) Словарь

Г) Кортеж

Ответ: В

35. Какой оператор используется для проверки принадлежности элемента к коллекции?

А) in

Б) is

В) has

Г) with

Ответ: А

36. Какой метод используется для чтения строки из файла?

А) read()

Б) readline()

В) readlines()

Г) Все перечисленные

Ответ: Г

37. Какой метод используется для записи строки в файл?

А) write()

Б) print()

В) writeline()

Г) insert()

Ответ: А

38. Какой метод используется для закрытия файла?

А) close()

Б) exit()

В) end()

Г) finish()

Ответ: А

39. Как создать генератор в Python?

А) Использовать ключевое слово yield

Б) Использовать ключевое слово return

В) Использовать ключевое слово generate

Г) Использовать ключевое слово create

Ответ: А

40. Какой модуль используется для написания юнит-тестов?

А) unittest

Б) test

В) testing

Г) pytest

 
Ответ: А

Блок 3. Знать, Уметь, Владеть

41. Какой из вариантов корректно реализует паттерн "Одиночка" (Singleton) в Python?

А) Использовать статический атрибут класса

Б) Использовать приватный конструктор

В) Использовать модуль как синглтон

Г) Все перечисленные

Ответ: Г

42. Какой подход используется для организации больших проектов в Python?

А) Использование модулей и пакетов

Б) Использование только одного файла

В) Использование глобальных переменных

Г) Использование только функций

Ответ: А

43. Какой принцип SOLID требует, чтобы класс имел только одну причину для изменения?

А) Open/Closed Principle

Б) Single Responsibility Principle

В) Liskov Substitution Principle

Г) Dependency Inversion Principle

Ответ: Б

44. Какой способ используется для сериализации объекта в Python?

А) pickle

Б) json

В) marshal

Г) Все перечисленные

Ответ: Г

45. Какой модуль используется для работы с графическим интерфейсом в стандартной библиотеке?

А) tkinter

Б) gui

В) qt

Г) wxpython

Ответ: А

46. Какой подход обеспечивает повторное использование кода?

А) Наследование

Б) Инкапсуляция

В) Полиморфизм

Г) Все перечисленные

Ответ: Г

47. Какой метод используется для проверки типа объекта?

А) isinstance()

Б) type()

В) class()

Г) object()

Ответ: А

48. Какой способ позволяет реализовать интерфейс в Python?

А) Использование абстрактного класса

Б) Использование протоколов

В) Использование duck typing

Г) Все перечисленные

Ответ: Г

49. Какой способ позволяет документировать класс?

А) Docstring

Б) Комментарии

В) Внешняя документация

Г) Все перечисленные

Ответ: Г

50. Какой способ позволяет повысить безопасность кода?

А) Использование инкапсуляции

Б) Использование приватных атрибутов

В) Использование проверки типов

Г) Все перечисленные

Ответ: Г

Кейс-задания

Кейс-задание 1. Автоматизация учета товаров на складе

Ситуация:

Ваша компания занимается оптовой торговлей. Необходимо автоматизировать учет товаров на складе. Требуется реализовать систему, позволяющую:

 
• хранить информацию о товарах (название, категория, цена, количество),

• добавлять новые товары,

• изменять количество и цену товара,

• формировать отчет о наличии товаров и общей стоимости запасов.

Задание:

1. Разработайте структуру классов для решения задачи (например, Product, Warehouse).

2. Реализуйте методы для добавления, изменения и отображения информации о товарах.

3. Протестируйте работу программы на примере 3-5 товаров.

4. Сформулируйте выводы о преимуществах применения ООП для подобных задач.

Кейс-задание 2. Система управления заказами в интернет-магазине

Ситуация:

Интернет-магазин принимает заказы на различные товары. Каждый заказ содержит сведения о клиенте, списке товаров, общей стоимости и статусе заказа (новый, в обработке, выполнен).

Задание:

1. Определите классы для моделирования предметной области (Order, Customer, Product).

2. Реализуйте методы для добавления товаров в заказ, изменения статуса заказа, расчета общей стоимости.

3. Предусмотрите обработку ошибок (например, попытка добавить несуществующий товар).

4. Протестируйте систему на примере 2-3 заказов.

Кейс-задание 3. Учёт сотрудников и расчет зарплаты

Ситуация:

В компании работают сотрудники разных должностей (менеджер, бухгалтер, программист). Для каждого сотрудника необходимо хранить ФИО, должность, оклад, а также рассчитывать зарплату с учетом премии или надбавки.

Задание:

1. Разработайте иерархию классов для сотрудников с учетом наследования.

2. Реализуйте методы для расчета зарплаты с учетом индивидуальных надбавок.

3. Реализуйте вывод общей ведомости по зарплате.

4. Протестируйте на примере 3-4 сотрудников разных должностей.

Кейс-задание 4. Программирование графического интерфейса (GUI) для учета клиентов

Ситуация:

Требуется создать простое приложение с графическим интерфейсом (на базе Tkinter), позволяющее:

• добавлять клиентов (ФИО, телефон, e-mail),

• отображать список клиентов,

• искать клиента по фамилии.

Задание:

1. Разработайте классы для хранения данных о клиентах.

2. Реализуйте основные функции интерфейса (добавление, просмотр, поиск).

3. Протестируйте приложение, добавив 3-5 клиентов.

Кейс-задание 5. Анализ и визуализация данных

Ситуация:

Вам даны данные о продажах товаров за месяц (название, количество, выручка). Необходимо проанализировать данные и построить график (использовать matplotlib).

Задание:

1. Создайте класс для хранения информации о продажах.

2. Реализуйте методы для анализа (суммарная выручка, топ-3 товара по продажам).

3. Постройте график выручки по каждому товару.

4. Сделайте выводы по результатам анализа.

Рекомендации по оформлению кейса

1. Анализ ситуации:

Кратко опишите, какие классы и методы необходимы для решения задачи.

2. Проектирование:

Нарисуйте схему классов (UML-диаграмма - по желанию).

3. Реализация:

Приведите фрагменты кода (основные классы, методы).

4. Тестирование:

Покажите примеры работы программы (вывод, скриншоты).

5. Выводы:

Опишите, какие преимущества дало применение ООП, с какими трудностями столкнулись, как их решили.

 
Темы письменных работ (эссе, рефераты, курсовые работы и др.)
1. Теоретические основы и история ООП

• История развития объектно-ориентированного программирования

• Основные парадигмы программирования: сравнение ООП, структурного и процедурного подходов

• Вклад ООП в развитие современных языков программирования

2. Базовые понятия ООП

• Класс и объект: определение, примеры, роль в программировании

• Инкапсуляция, наследование, полиморфизм: суть и примеры реализации в Python

• Абстракция как принцип ООП и её значение для проектирования программных систем

 
3. Практика ООП на языке Python

• Реализация основных принципов ООП в Python

• Особенности наследования и множественного наследования в Python

• Перегрузка операторов и полиморфизм в Python

• Использование модулей и пакетов для построения крупных ООП-проектов

4. Проектирование и анализ программных систем

• Использование UML-диаграмм для проектирования ООП-систем

• Применение паттернов проектирования в объектно-ориентированных приложениях (на примере Python)

• Роль тестирования и отладки в процессе разработки ООП-программ

5. Прикладные аспекты и современные тенденции

• ООП в разработке графических пользовательских интерфейсов (GUI) на Python

• ООП и базы данных: применение ORM (Object-Relational Mapping) в Python

• Сравнение ООП в Python и других языках (Java, C++, C#)

• Применение ООП в экономических и бизнес-приложениях

6. Безопасность, качество и стандарты кода

• Инкапсуляция как инструмент повышения безопасности программного кода

• Стандарты оформления и документирования ООП-кода на Python

• Применение принципов SOLID в Python

7. Перспективы и развитие ООП

• Перспективы развития объектно-ориентированного программирования

• ООП и современные парадигмы: функциональное и реактивное программирование

 
Методические материалы, определяющие процедуры оценивания знаний, умений, навыков и (или) опыта деятельности, характеризующих этапы формирования компетенций в процессе освоения образовательной программы
Критерии оценки к экзамену
Оценка «отлично» (86-100 баллов) ставится обучающемуся, обнаружившему систематические и глубокие знания учебно-программного материала, умения свободно выполнять задания, предусмотренные программой в типовой ситуации (с ограничением времени) и в нетиповой ситуации, знакомство с основной и дополнительной литературой, усвоение взаимосвязи основных понятий дисциплины в их значении приобретаемой специальности и проявившему творческие способности и самостоятельность в приобретении знаний. Студент исчерпывающим образом ответил на вопросы экзаменационного билета. Задача решена правильно, студент способен обосновать выбранный способ и пояснить ход решения задачи.

Оценка «хорошо» (71-85 баллов) ставится обучающемуся, обнаружившему полное знание учебно-программного материала, успешное выполнение заданий, предусмотренных программой в типовой ситуации (с ограничением времени), усвоение материалов основной литературы, рекомендованной в программе, способность к самостоятельному пополнению и обновлению знаний в ходе дальнейшей работы над литературой и в профессиональной деятельности. При ответе на вопросы экзаменационного билета студентом допущены несущественные ошибки. Задача решена правильно или ее решение содержало несущественную ошибку, исправленную при наводящем вопросе экзаменатора.

Оценка «удовлетворительно» (56-70 баллов) ставится обучающемуся, обнаружившему знание основного учебно-программного материала в объеме, достаточном для дальнейшей учебы и предстоящей работы по специальности, знакомство с основной литературой, рекомендованной программой, умение выполнять задания, предусмотренные программой. При ответе на экзаменационные вопросы и при выполнении экзаменационных заданий обучающийся допускает погрешности, но обладает необходимыми знаниями для устранения ошибок под руководством преподавателя. Решение задачи содержит ошибку, исправленную при наводящем вопросе экзаменатора.

Оценка «неудовлетворительно» (менее 56 баллов) ставится обучающемуся, обнаружившему пробелы в знаниях основного учебно-программного материала, допустившему принципиальные ошибки в выполнении предусмотренных программой заданий, слабые побуждения к самостоятельной работе над рекомендованной основной литературой. Оценка «неудовлетворительно» ставится обучающимся, которые не могут продолжить обучение или приступить к профессиональной деятельности по окончании академии без дополнительных занятий по соответствующей дисциплине.

Критерии оценки к зачету и зачету с оценкой
зачет /оценка «отлично» (86-100 баллов) ставится обучающемуся, обнаружившему систематические и глубокие знания учебно-программного материала, умения свободно выполнять задания, предусмотренные программой в типовой ситуации (с ограничением времени) и в нетиповой ситуации, знакомство с основной и дополнительной литературой, усвоение взаимосвязи основных понятий дисциплины в их значении приобретаемой специальности и проявившему творческие способности и самостоятельность в приобретении знаний.

зачет /оценка «хорошо» (71-85 баллов) ставится обучающемуся, обнаружившему полное знание учебно-программного материала, успешное выполнение заданий, предусмотренных программой в типовой ситуации (с ограничением времени), усвоение материалов основной литературы, рекомендованной в программе, способность к самостоятельному пополнению и обновлению знаний в ходе дальнейшей работы над литературой и в профессиональной деятельности.

зачет /оценка «удовлетворительно» (56-70 баллов) ставится обучающемуся, обнаружившему знание основного учебно-программного материала в объеме, достаточном для дальнейшей учебы и предстоящей работы по специальности, знакомство с основной литературой, рекомендованной программой, умение выполнять задания, предусмотренные программой.

незачет /оценка «неудовлетворительно» (менее 56 баллов) ставится обучающемуся, обнаружившему пробелы в знаниях 

УДАЛИТЕ НЕНУЖНЫЙ
 
основного учебно-программного материала, допустившему принципиальные ошибки в выполнении предусмотренных программой заданий, слабые побуждения к самостоятельной работе над рекомендованной основной литературой. Оценка «неудовлетворительно» ставится обучающимся, которые не могут продолжить обучение или приступить к профессиональной деятельности по окончании академии без дополнительных занятий по соответствующей дисциплине.

Критерии оценки к курсовой работе/ проекту
оценка «отлично» (86-100 баллов) - выставляется обучающемуся, если работа выполнена самостоятельно в соответствии с заданием и в полном объеме, полученные результаты интерпретированы применительно к исследуемому объекту, основные положения работы освещены в докладе, ответы на вопросы удовлетворяют членов комиссии, качество оформления пояснительной записки и иллюстративных материалов отвечает предъявляемым требованиям;

оценка «хорошо» (71-85 баллов) - основанием для снижения оценки может служить нечеткое представление сущности и результатов исследований на защите, или затруднения при ответах на вопросы, или недостаточный уровень качества оформления текстовой части и иллюстративных материалов, или отсутствие последних;

оценка «удовлетворительно» (56-70 баллов) - дополнительное снижение оценки может быть вызвано выполнением работы не в полном объеме, или неспособностью студента правильно интерпретировать полученные результаты, или неверными ответами на вопросы по существу проделанной работы;

оценка «неудовлетворительно» (менее 56 баллов) - выставление этой оценки осуществляется при несамостоятельном выполнении работы, или при неспособности студента пояснить ее основные положения, или в случае фальсификации результатов, или установленного плагиата.

Критерии оценки к зачету/зачету с оценкой отчета по практике
Отчет должен быть защищен обучающимся по окончании практики в соответствии с графиком, установленным кафедрой совместно с деканатом/директоратом. Требования к оформлению отчета, порядок защиты устанавливаются методическими изданиями в соответствие с Положением «О практике обучающихся, осваивающих ОПОП высшего образования» СТО СМК 7.1.П.-39.0-2017.

зачет /оценка «отлично» (86-100 баллов) ставится обучающемуся:

- отчет выполнен в соответствии с заданием, грамотно, характеризуется логичным, последовательным изложением материала с соответствующими выводами и /или обоснованными расчетами, предложениями; не содержит ошибок;  

- проведено научное исследование в соответствие с полученным заданием;

- отчет выполнен с использованием современных информационных технологий и ресурсов;

- обучающийся при выполнении и защите отчета демонстрирует продвинутый уровень сформированности компетенций, предусмотренных программой практики;

- отчет о прохождении производственной практики имеет положительную характеристику руководителей практики от предприятия и кафедры на обучающегося;  

зачет /оценка «хорошо» (71-85 баллов) ставится обучающемуся:

- отчет выполнен в соответствии с заданием, грамотно, характеризуется логичным, последовательным изложением материала, допущены небольшие неточности при формировании выводов/расчетов, предложений; содержит незначительные ошибки/опечатки в текстовой части отчета;  

- проведено научное исследование в соответствие с полученным заданием;

- отчет выполнен с использованием современных информационных технологий и ресурсов;

- обучающийся при выполнении и защите отчета демонстрирует базовый уровень сформированности компетенций, предусмотренных программой практики;

- отчет о прохождении производственной практики имеет положительную характеристику руководителей практики от предприятия и кафедры на обучающегося;  

зачет /оценка «удовлетворительно» (56-70 баллов) ставится обучающемуся:

- отчет выполнен в соответствии с заданием, материал изложен последовательно, допущены неточности при формировании выводов/расчетов, предложений; содержит ошибки/опечатки в текстовой части отчета;  

- присутствуют элементы научного исследования, творческий подход к решению поставленных задач проявляется незначительно;

- отчет выполнен с использованием современных информационных технологий и ресурсов;

- обучающийся при выполнении и защите отчета демонстрирует пороговый уровень сформированности компетенций, предусмотренных программой практики;

- отчет о прохождении производственной практики имеет положительную характеристику руководителей практики от предприятия и кафедры на обучающегося;  

незачет /оценка «неудовлетворительно» (менее 56 баллов) ставится обучающемуся:

- отчет выполнен не в соответствии с заданием, материалы не подтверждены соответствующими выводами и/или обоснованными расчетами, предложениями; текстовая часть отчета содержит многочисленные ошибки;  

- творческий подход к решению поставленных задач не проявляется; отсутствуют элементы научного исследования;

- отчет выполнен с использованием современных пакетов компьютерных программ, информационных технологий и информационных ресурсов;

- обучающийся при выполнении и защите отчета показывает не сформированность компетенций, предусмотренных программой практики;

- отчет имеет отрицательную характеристику руководителей практики от предприятия и кафедры на обучающегося.

 
Критерии оценивания контрольной работы текущего контроля успеваемости обучающихся (рекомендуемое)

Комплект контрольных вопросов для проведения устных опросов

Критерии оценивания (устанавливаются разработчиком самостоятельно с учетом использования рейтинговой системы

 
оценки успеваемости обучающихся)

Примерные критерии оценивания:

– правильность ответа по содержанию задания (учитывается количество и характер ошибок при ответе);

– полнота и глубина ответа (учитывается количество усвоенных фактов, понятий и т.п.);

– сознательность ответа (учитывается понимание излагаемого материала);

– логика изложения материала (учитывается умение строить целостный, последовательный рассказ, грамотно пользоваться специальной терминологией);

– использование дополнительного материала;

– рациональность использования времени, отведенного на задание (не одобряется затянутость выполнения задания, устного ответа во времени, с учетом индивидуальных особенностей обучающихся).

Шкала оценивания (устанавливается разработчиком самостоятельно с учетом использования рейтинговой системы оценки успеваемости обучающихся)

Примерная шкала оценивания:

Баллы

для учета в рейтинге (оценка)

Степень удовлетворения критериям
86-100 баллов

«отлично»

Обучающийся полно и аргументировано отвечает по содержанию вопроса (задания); обнаруживает понимание материала, может обосновать свои суждения, применить знания на практике, привести необходимые примеры не только по учебнику, но и самостоятельно составленные; излагает материал последовательно и правильно.
71-85  баллов

«хорошо»

Обучающийся достаточно полно и аргументировано отвечает по содержанию вопроса (задания); обнаруживает понимание материала, может обосновать свои суждения, применить знания на практике, привести необходимые примеры не только по учебнику, но и самостоятельно составленные; излагает материал последовательно. Допускает 1-2 ошибки, исправленные с помощью наводящих вопросов.
56-70  баллов

«удовлетво-рительно»

Обучающийся обнаруживает знание и понимание основных положений данного задания, но излагает материал неполно и допускает неточности в определении понятий или формулировке правил; не умеет достаточно глубоко и доказательно обосновать свои суждения и привести свои примеры; излагает материал непоследовательно и допускает ошибки.
0-55  баллов

«неудовлетворительно»

Обучающийся обнаруживает незнание ответа на соответствующее задание (вопрос), допускает ошибки в формулировке определений и правил, искажающие их смысл, беспорядочно и неуверенно излагает материал. Отмечаются такие недостатки в подготовке обучающегося, которые являются серьезным препятствием к успешному овладению последующим материалом.
 
Баллы

для учета в рейтинге (оценка)

Степень удовлетворения критериям
Перечень дискуссионных тем

Критерии оценивания (устанавливаются разработчиком самостоятельно с учетом использования рейтинговой системы оценки успеваемости обучающихся)

Примерные критерии оценивания:

- теоретический уровень знаний;

- качество ответов на вопросы;

- подкрепление материалов фактическими данными (статистические данные или др.);

- практическая ценность материала;

- способность делать выводы;

- способность отстаивать собственную точку зрения;

- способность ориентироваться в представленном материале;

- степень участия в общей дискуссии.

Шкала оценивания (устанавливается разработчиком самостоятельно с учетом использования рейтинговой системы оценки успеваемости обучающихся)

Примерная шкала оценивания:

Критерии оценивания контрольной работы дискуссионных тем и вопросов для круглого стола

(дискуссии, полемики, диспута, дебатов)  

86-100 баллов

«отлично»

Обучающийся свободно владеет учебным материалом; проявляет навыки анализа, обобщения, критического осмысления, публичной речи, аргументации, ведения дискуссии и полемики, критического восприятия информации; материал изложен грамотно, в определенной логической последовательности, точно

используется терминология; показано умение иллюстрировать теоретические положения конкретными примерами, применять их в новой ситуации; высказывать свою точку зрения.

71-85 баллов

«хорошо»

Ответ удовлетворяет в основном требованиям на оценку «отлично», но при этом имеет один из недостатков: в усвоении учебного материала допущены небольшие пробелы, не исказившие содержание ответа; допущены один – два недочета в формировании навыков
 
публичной речи, аргументации, ведения дискуссии и полемики, критического восприятия информации.
56-70 баллов

«удовлетво-рительно»

Неполно или непоследовательно раскрыто содержание материала, но показано общее понимание вопроса и продемонстрированы умения, достаточные для дальнейшего усвоения материала; имелись затруднения или допущены ошибки в определении понятий, использовании терминологии, исправленные после нескольких наводящих вопросов. Обучающийся не может применить теорию в новой ситуации.
0-55  баллов

«неудовлетворительно»

Не раскрыто основное содержание учебного материала; обнаружено незнание или непонимание большей или наиболее важной части учебного материала; допущены ошибки в определении понятий, при использовании терминологии, которые не исправлены после нескольких наводящих вопросов; не сформированы умения и навыки публичной речи, аргументации, ведения дискуссии и полемики, критического восприятия информации.
 
Баллы

для учета в рейтинге (оценка)

Степень удовлетворения критериям
Перечень заданий для контрольной работы

Критерии оценивания (устанавливаются разработчиком самостоятельно с учетом использования рейтинговой системы оценки успеваемости обучающихся)

Примерные критерии оценивания:

– полнота раскрытия темы;

– правильность формулировки и использования понятий и категорий;

– правильность выполнения заданий/ решения задач;

– аккуратность оформления работы и др.

Шкала оценивания (устанавливается разработчиком самостоятельно с учетом использования рейтинговой системы оценки успеваемости обучающихся)

Примерная шкала оценивания:

Критерии оценивания контрольной работы для контрольной работы

(обязательно для дисциплин, где по УП предусмотрена контрольная работа)

86-100 баллов

«отлично»

Полное раскрытие темы, указание точных названий и определений, правильная формулировка понятий и категорий, приведены все необходимые формулы, соответствующая статистика и т.п., все задания выполнены верно (все задачи решены правильно), работа выполнена аккуратно, без помарок.
71-85  баллов

«хорошо»

Недостаточно полное раскрытие темы, одна-две несущественные ошибки в определении понятий и категорий, в формулах, статистических данных и т. п., кардинально не меняющие суть изложения, наличие незначительного количества грамматических и стилистических ошибок, одна-две несущественные погрешности при выполнении заданий или в решениях задач. Работа выполнена аккуратно.
56-70  баллов

«удовлетво-рительно»

Ответ отражает лишь общее направление изложения лекционного материала, наличие более двух несущественных или одной-двух существенных ошибок в определении понятий и категорий, формулах, статистических данных и т. п.; большое количество грамматических и стилистических ошибок, одна-две существенные ошибки при выполнении заданий или в решениях задач. Работа выполнена небрежно.
0-55  баллов

«неудовлетворительно»

Обучающийся демонстрирует слабое понимание программного материала. Тема не раскрыта, более двух существенных ошибок в определении понятий и категорий, в формулах, статистических данных, при выполнении заданий или в решениях задач, наличие грамматических и стилистических ошибок и др.
 
Критерии оценивания (устанавливаются разработчиком самостоятельно с учетом использования рейтинговой системы оценки успеваемости обучающихся)

Примерные критерии оценивания:

– правильность выполнения задания на практическую/лабораторную работу в соответствии с вариантом;

– степень усвоения теоретического материала по теме практической /лабораторной работы;

– способность продемонстрировать преподавателю навыки работы в инструментальной программной среде, а также применить их к решению типовых задач, отличных от варианта задания;

– качество подготовки отчета по практической / лабораторной работе;

– правильность и полнота ответов на вопросы преподавателя при защите работы

и др.

Шкала оценивания (устанавливается разработчиком самостоятельно с учетом использования рейтинговой системы оценки успеваемости обучающихся)

Примерная шкала оценивания практических занятий (лабораторных работ):

Критерии оценивания контрольной работы для практических (лабораторных) работ

Баллы

для учета в рейтинге (оценка)

Степень удовлетворения критериям
 
86-100 баллов

«отлично»

Выполнены все задания практической (лабораторной) работы, обучающийся четко и без ошибок ответил на все контрольные вопросы.
71-85  баллов

«хорошо»

Выполнены все задания практической (лабораторной) работы; обучающийся ответил на все контрольные вопросы с замечаниями.
56-70  баллов

«удовлетво-рительно»

Выполнены все задания практической (лабораторной) работы с замечаниями; обучающийся ответил на все контрольные вопросы с замечаниями.
0-55  баллов

«неудовлетворительно»

Обучающийся не выполнил или выполнил неправильно задания практической (лабораторной) работы; обучающийся ответил на контрольные вопросы с ошибками или не ответил на контрольные вопросы.
 
Комплект заданий

Критерии оценивания (устанавливаются разработчиком самостоятельно с учетом использования рейтинговой системы оценки успеваемости обучающихся)

Примерные критерии оценивания:

В качестве критериев могут быть выбраны, например:

– соответствие срока сдачи работы установленному преподавателем;

– соответствие содержания и оформления работы предъявленным требованиям;

– способность выполнять вычисления;

– умение использовать полученные ранее знания и навыки для решения конкретных задач;

– умение отвечать на вопросы, делать выводы, пользоваться профессиональной и общей лексикой;

– обоснованность решения и соответствие методике (алгоритму) расчетов;

Шкала оценивания (устанавливается разработчиком самостоятельно с учетом использования рейтинговой системы оценки успеваемости обучающихся)

Примерная шкала оценивания:

Критерии оценивания контрольной работы для выполнения

расчетно-графической работы,  работы на тренажере

Баллы

для учета в рейтинге (оценка)

Степень удовлетворения критериям
86-100 баллов

«отлично»

Все материалы, расчеты, построения оформлены согласно требованиям и демонстрируют высокий уровень освоения теоретического материала, способность составлять и реализовать алгоритм решения по исходным данным. Вычисления выполнены четко, ответы на вопросы, выводы к работе отражают точку зрения обучающегося на решаемую проблему. Все материалы представлены в установленный срок, не требуют дополнительного времени на завершение. 
71-85  баллов

«хорошо»

Все материалы, расчеты, построения оформлены согласно требованиям и демонстрируют достаточно высокий уровень освоения теоретического материала, способность составлять и реализовать алгоритм решения по исходным данным. В работе присутствуют несущественные ошибки при вычислениях и построении чертежей, не влияющие на общий результат работы, при грамотном ответе на большинство поставленных вопросов. Все материалы представлены в установленный срок, не требуют дополнительного времени на завершение. 
56-70  баллов

«удовлетво-рительно»

Материалы, расчеты, построения оформлены с ошибками, не в полном объеме, демонстрируют наличие пробелов в освоении теоретического материала, низкий уровень способности составлять и реализовать алгоритм решения по исходным данным. В работе присутствуют ошибки, которые не оказывают существенного влияния на окончательный результат. Работа оформлена неаккуратно, представлена с задержкой и требует дополнительного времени на завершение.
0-55  баллов

«неудовлетворительно»

Демонстрирует низкий/ниже среднего уровень освоения теоретического материала, неспособность составлять и реализовать алгоритм решения по исходным данным. Многие требования, предъявляемые к заданию, не выполнены. Обучающийся не может ответить на замечания преподавателя, не владеет материалом работы, не в состоянии дать объяснения выводам и теоретическим положениям данной работы. Оформление работы не соответствует требованиям.
 
Материалы тестовых заданий

Материалы тестовых заданий следует сгруппировать по темам/разделам изучаемой дисциплины (модуля) в следующем виде:

Тема (темы) / Раздел дисциплины (модуля)

Тестовые задания по данной теме (темам)/Разделу с указанием правильных ответов.

Критерии оценивания (устанавливаются разработчиком самостоятельно с учетом использования рейтинговой системы оценки успеваемости обучающихся)

Примерные критерии оценивания:

- отношение правильно выполненных заданий к общему их количеству

Шкала оценивания (устанавливается разработчиком самостоятельно с учетом использования рейтинговой системы

Критерии оценивания контрольной работы тестовых заданий

 
Баллы

для учета в рейтинге (оценка)

Степень удовлетворения критериям
86-100 баллов «отлично»

Выполнено 86-100% заданий
71-85  баллов «хорошо»

Выполнено 71-85% заданий 
56-70  баллов «удовлетво-рительно»

Выполнено 56-70% заданий
0-55  баллов «неудовлетворительно»

Выполнено 0-56% заданий
оценки успеваемости обучающихся)

Примерная шкала оценивания:

 
Баллы

для учета в рейтинге (оценка)

Степень удовлетворения критериям
86-100 баллов «отлично»

Демонстрирует очень высокий/высокий уровень знаний, умений, навыков в соответствии с критериями оценивания. Все требования, предъявляемые к заданию, выполнены.
71-85  баллов «хорошо»

Демонстрирует достаточно высокий/выше среднего уровень знаний, умений, навыков в соответствии с критериями оценивания. Все требования, предъявляемые к заданию, выполнены.
56-70  баллов «удовлетво-рительно»

Демонстрирует средний уровень знаний, умений, навыков в соответствии с критериями оценивания. Большинство требований, предъявляемых к заданию, выполнены.
0-55  баллов «неудовлетворительно»

Демонстрирует низкий/ниже среднего уровень знаний, умений, навыков в соответствии с критериями оценивания. Многие требования, предъявляемые к заданию, не выполнены. Нет ответа. Не было попытки решить задачу.
Задачи репродуктивного уровня  

Задачи реконструктивного уровня

Задачи творческого уровня

Критерии оценивания (устанавливаются разработчиком самостоятельно с учетом использования рейтинговой системы оценки успеваемости обучающихся)

Примерные критерии оценивания:

– полнота знаний теоретического контролируемого материала;

– полнота знаний практического контролируемого материала, демонстрация умений и навыков решения типовых задач, выполнения типовых заданий/упражнений/казусов;

– умение самостоятельно решать проблему/задачу на основе изученных методов, приемов, технологий;

– умение ясно, четко, логично и грамотно излагать собственные размышления, делать умозаключения и выводы;

– полнота и правильность выполнения задания.

Шкала оценивания (устанавливается разработчиком самостоятельно с учетом использования рейтинговой системы оценки успеваемости обучающихся)

Примерная шкала оценивания:

Критерии оценивания контрольной работы разноуровневых задач (заданий)

 
Перечень тем эссе/докладов/рефератов/сообщений и т.п.

Критерии оценивания (устанавливаются разработчиком самостоятельно с учетом использования рейтинговой системы оценки успеваемости обучающихся)

Примерные критерии оценивания:

– полнота раскрытия темы;

– степень владения понятийно-терминологическим аппаратом дисциплины;

– знание фактического материала, отсутствие фактических ошибок;

– умение логически выстроить материал ответа;

– умение аргументировать предложенные подходы и решения, сделанные выводы;

– степень самостоятельности, грамотности, оригинальности в представлении материала (стилистические обороты, манера изложения, словарный запас, отсутствие или наличие грамматических ошибок);

– выполнение требований к оформлению работы.

Шкала оценивания (устанавливается разработчиком самостоятельно с учетом использования рейтинговой системы оценки успеваемости обучающихся).

Критерии оценивания контрольной работы темы эссе

(рефератов, докладов, сообщений)

 
Баллы

для учета в рейтинге (оценка)

Степень удовлетворения критериям
86-100 баллов «отлично»

Содержание работы в целом соответствует теме задания. Продемонстрировано знание фактического материала, отсутствуют ошибки. Продемонстрировано уверенное владение понятийно-терминологическим аппаратом дисциплины (уместность употребления, аббревиатуры, толкование и т.д.), отсутствуют ошибки в употреблении терминов.

Показано умелое использование категорий и терминов дисциплины в их ассоциативной взаимосвязи.

Ответ четко структурирован и выстроен в заданной логике. Части ответа логически взаимосвязаны. Отражена логическая структура проблемы (задания): постановка проблемы – аргументация – выводы. Объем ответа укладывается в заданные рамки при сохранении смысла.

Продемонстрировано умение аргументировано излагать собственную точку зрения. Видно уверенное владение освоенным материалом, изложение сопровождено адекватными иллюстрациями (примерами) из практики.

Высокая степень самостоятельности, оригинальность в представлении материала: стилистические обороты, манера изложения, словарный запас. Отсутствуют стилистические и орфографические ошибки в тексте.

Работа выполнена аккуратно, без помарок и исправлений.

Примерная шкала оценивания письменных работ:

71-85  баллов «хорошо»

Содержание ответа в целом соответствует теме задания. Продемонстрировано знание фактического материала, встречаются несущественные фактические ошибки.

Продемонстрировано владение понятийно-терминологическим аппаратом дисциплины (уместность употребления, аббревиатуры, толкование и т.д.), отсутствуют ошибки в употреблении терминов.

Показано умелое использование категорий и терминов дисциплины в их ассоциативной взаимосвязи.

Ответ в достаточной степени структурирован и выстроен в заданной логике без нарушений общего смысла. Части ответа логически взаимосвязаны. Отражена логическая структура проблемы (задания): постановка проблемы – аргументация – выводы. Объем ответа незначительно превышает заданные рамки при сохранении смысла.

Продемонстрировано умение аргументированно излагать собственную точку зрения, но аргументация не всегда убедительна. Изложение лишь отчасти сопровождено адекватными иллюстрациями (примерами) из практики.

Достаточная степень самостоятельности, оригинальность в представлении материала. Встречаются мелкие и не искажающие смысла ошибки в стилистике, стилистические штампы. Есть 1–2 орфографические ошибки.

Работа выполнена аккуратно, без помарок и исправлений.

56-70  баллов  «удовлетво-рительно»

Содержание работы в целом соответствует теме задания. Продемонстрировано удовлетворительное знание фактического материала, есть фактические ошибки (25– 30%).

Продемонстрировано достаточное владение понятийно-терминологическим аппаратом дисциплины, есть ошибки в употреблении и трактовке терминов, расшифровке аббревиатур.

Ошибки в использовании категорий и терминов дисциплины в их ассоциативной взаимосвязи.

Ответ плохо структурирован, нарушена заданная логика. Части ответа логически разорваны, нет связок между ними. Ошибки в представлении логической структуры проблемы (задания): постановка проблемы – аргументация – выводы. Объем ответа в существенной степени (на 25–30%) отклоняется от заданных рамок.

Нет собственной точки зрения либо она слабо аргументирована. Примеры, приведенные в ответе в качестве практических иллюстраций, в малой степени соответствуют изложенным теоретическим аспектам.

Текст работы примерно наполовину представляет собой стандартные обороты и фразы из учебника/лекций. Обилие ошибок в стилистике, много стилистических штампов. Есть 3–5 орфографических ошибок.

Работа выполнена не очень аккуратно, встречаются помарки и исправления.

0-55  баллов  «неудовлетворительно»

Содержание ответа не соответствует теме задания или соответствует ему в очень малой степени.

Продемонстрировано крайне слабое владение понятийно-терминологическим аппаратом дисциплины (неуместность употребления, неверные аббревиатуры, искаженное толкование и т.д.), присутствуют многочисленные ошибки в употреблении терминов.

Продемонстрировано крайне низкое (отрывочное) знание фактического материала, много фактических ошибок – практически все факты (данные) либо искажены, либо неверны.

Ответ представляет собой сплошной текст без структурирования, нарушена заданная логика. Части ответа не взаимосвязаны логически. Нарушена логическая структура проблемы (задания): постановка проблемы – аргументация – выводы. Объем ответа более чем в 2 раза меньше или превышает заданный. Показаны неверные ассоциативные взаимосвязи категорий и терминов дисциплины.

Отсутствует аргументация изложенной точки зрения, нет собственной позиции. Отсутствуют примеры из практики либо они неадекватны.

Текст ответа представляет полную кальку текста учебника/лекций. Стилистические

 
ошибки приводят к существенному искажению смысла. Большое число орфографических ошибок в тексте (более 10 на страницу).

Работа выполнена неаккуратно, с обилием помарок и исправлений. В работе один абзац и больше позаимствован из какого-либо источника без ссылки на него.

 
Критерии оценивания контрольной работы участия обучающегося в активных формах обучения (доклады, выступления на семинарах, практических занятиях и пр.):

Баллы

для учета в рейтинге (оценка)

Степень удовлетворения критериям
86-100 баллов «отлично»

Полное раскрытие вопроса; указание точных названий и определений; правильная формулировка понятий и категорий; самостоятельность ответа, умение вводить и использовать собственные классификации и квалификации, анализировать и делать собственные выводы по рассматриваемой теме; использование дополнительной литературы и иных материалов и др.
71-85  баллов «хорошо»

Недостаточно полное, по мнению преподавателя, раскрытие темы; несущественные ошибки в определении понятий, категорий и т.п., кардинально не меняющих суть изложения; использование устаревшей учебной литературы и других источников
56-70  баллов «удовлетво-рительно»

Отражение лишь общего направления изложения лекционного материала и материала современных учебников; наличие достаточного количества несущественных или одной - двух существенных ошибок в определении понятий и категорий и т. п.; использование устаревшей учебной литературы и других источников; неспособность осветить проблематику учебной дисциплины и др.
0-55  баллов «неудовлетворительно»

Темы не раскрыта; большое количество существенных ошибок; отсутствие умений и навыков, обозначенных выше в качестве критериев выставления положительных оценок и др.
 
Задание (я):

Критерии оценивания (устанавливаются разработчиком самостоятельно с учетом использования рейтинговой системы оценки успеваемости обучающихся)

Примерные критерии оценивания:

- соответствие решения сформулированным в кейсе вопросам (адекватность проблеме и рынку);

- оригинальность подхода (новаторство, креативность);

- применимость решения на практике;

- глубина проработки проблемы (обоснованность решения, наличие альтернативных вариантов, прогнозирование возможных проблем, комплексность решения).

Шкала оценивания (устанавливается разработчиком самостоятельно с учетом использования рейтинговой системы оценки успеваемости обучающихся)

Примерная шкала оценивания:

Критерии оценивания контрольной работы кейс-задач

Баллы

для учета в рейтинге (оценка)

Степень удовлетворения критериям
86-100 баллов «отлично»

Предложенное решение соответствует поставленной в кейс-задаче проблеме. Обучающийся применяет оригинальный подход к решению поставленной проблемы, демонстрирует высокий уровень теоретических знаний, анализ соответствующих источников. Формулировки кратки, ясны и точны. Ожидаемые результаты применения предложенного решения конкретны, измеримы и обоснованы.
71-85 баллов «хорошо»

Предложенное решение соответствует поставленной в кейс-задаче проблеме. Обучающийся применяет в основном традиционный подход с элементами новаторства, частично подкрепленный анализом соответствующих источников, демонстрирует хороший уровень теоретических знаний. Формулировки недостаточно кратки, ясны и точны. Ожидаемые результаты применения предложенного решения требуют исправления незначительных ошибок.
56-70  баллов «удовлетво-рительно»

Демонстрирует средний уровень знаний, умений, навыков в соответствии с критериями оценивания. Предложенное решение требует дополнительной конкретизации и обоснования, в целом соответствует  поставленной в задаче проблеме. При решении поставленной проблемы обучающийся применяет традиционный подход, демонстрирует твердые знания по поставленной проблеме. Предложенное решение содержит ошибки, уверенно исправленные после наводящих вопросов.
0-55  баллов «неудовлетворительно»

Наличие грубых ошибок в решении ситуации, непонимание сущности рассматриваемой проблемы, неуверенность и неточность ответов после наводящих вопросов. Предложенное решение не обосновано и не применимо на практике
 
Тема (проблема)

Критерии оценивания контрольной работы для деловой (ролевой) игры

 
Концепция игры

Роли:

Задания (вопросы, проблемные ситуации и др.)

Ожидаемый (е) результат(ы)

Критерии оценивания (устанавливаются разработчиком самостоятельно с учетом использования рейтинговой системы оценки успеваемости обучающихся)

Примерные критерии оценивания:

­ качество усвоения информации;

­ выступление;

­ содержание вопроса;

­ качество ответов на вопросы;

­ значимость дополнений, возражений, предложений;

­ уровень делового сотрудничества;

­ соблюдение правил деловой игры;

­ соблюдение регламента;

­ активность;

­ правильное применение профессиональной лексики.

Шкала оценивания (устанавливается разработчиком самостоятельно с учетом использования рейтинговой системы оценки успеваемости обучающихся)

Примерная шкала оценивания:

Баллы

для учета в рейтинге (оценка)

Степень удовлетворения критериям
86-100 баллов «отлично»

Участник деловой игры продемонстрировал понимание сути поставленной проблемы; теоретические положения изложены с использованием профессиональной лексики; ответы и выступления четкие и краткие, логически последовательные; активное участие в деловой игре.
71-85 баллов «хорошо»

Участник деловой игры продемонстрировал понимание сути поставленной проблемы; теоретические положения изложены с использованием профессиональной лексики с незначительными ошибками; ответы и выступления в основном краткие, но не всегда четкие и логически последовательные; участие в деловой игре.
56-70  баллов «удовлетво-рительно»

Участник деловой игры продемонстрировал понимание сути поставленной проблемы; теоретические положения изложены со слабым использованием профессиональной лексики; ответы и выступления многословные, нечеткие и без должной логической последовательности; пассивное участие в деловой игре.
0-55  баллов «неудовлетворительно»

Участник деловой игры продемонстрировал затруднения в понимании сути поставленной проблемы; отсутствие необходимых знаний и умений для решения проблемы; затруднения в построении самостоятельных высказываний; обучающийся практически не принимает участия в игре.
 
Баллы

для учета в рейтинге (оценка)

Степень удовлетворения критериям
86-100 баллов «отлично»

Работа демонстрирует точное понимание задания. Все материалы имеют непосредственное отношение к теме; источники цитируются правильно. Результаты работы представлены четко и логично, информация точна и отредактирована. Работа отличается яркой индивидуальностью и выражает точку зрения обучающегося.
71-85  баллов «хорошо»

Помимо материалов, имеющих непосредственное отношение к теме, включаются некоторые материалы, не имеющие отношение к ней; используется ограниченное количество источников. Не вся информация взята из достоверных источников; часть информации неточна или не имеет прямого отношения к теме. Недостаточно выражена собственная позиция и оценка информации. 
56-70  баллов «удовлетво-рительно»

Часть материалов не имеет непосредственного отношения к теме, используется 2-3 источника. Делается слабая попытка проанализировать информацию. Материал логически не выстроен и подан внешне непривлекательно, не дается четкого ответа на поставленные вопросы. Нет критического взгляда на проблему.
0-55  баллов «неудовлетворительно»

Больше половины материалов не имеет непосредственного отношения к теме, используется один источник. Не делается попытка проанализировать информацию. Материал логически не выстроен и подан внешне непривлекательно, не дается ответа на поставленные вопросы.
Групповые творческие задания (проекты):

Индивидуальные творческие задания (проекты):

Критерии оценивания (устанавливаются разработчиком самостоятельно с учетом использования рейтинговой системы оценки успеваемости обучающихся)

Примерные критерии оценивания:

- актуальность темы;

- соответствие содержания работы выбранной тематике;

- соответствие содержания и оформления работы установленным требованиям;

- обоснованность результатов и выводов, оригинальность идеи;

- новизна полученных данных;

- личный вклад обучающихся;

- возможности практического использования полученных данных.

Шкала оценивания (устанавливается разработчиком самостоятельно с учетом использования рейтинговой системы оценки успеваемости обучающихся)

Примерная шкала оценивания:

Критерии оценивания контрольной работы для тем групповых и/или индивидуальных творческих заданий/проектов

 
ИЗМЕНЕНИЯ И ДОПОЛНЕНИЯ
Ведомость изменений

п/п

Вид обновлений
Содержание изменений, вносимых в ОПОП
Обснование изменений
1
2
3
4
5
6