1 Цели курсового проектирования
Целью КР является закрепление и углубление знаний по дисциплинам "Алгоритмизация и программирование", «Теория алгоритмов», «Объектно-ориентированное программирование».
Основные задачи КР - составить иерархию классов согласно предложенной предметной области, разработать программу (языки С++, Java, C#) с описанием классов, конструкторами, членами-функциями, а также программу, которая пользуется свойствами и методами классов.
Знания и навыки, приобретаемые при разработке КР, будут необходимы студентам как в течение всего периода обучения, так и в дальнейшей профессиональной деятельности. Как показывает опыт, после приобретения базовых знаний и навыков алгоритмизации и программирования студент способен самостоятельно выбирать необходимую ему справочную литературу, в которой изложена информация по языку и среде программирования.
Студент самостоятельно проектирует структуру классов своей предметной области, выбирает оптимальный перечень переменных и функций классов, выбирает эффективный алгоритм решения поставленной задачи.
2 Тематика курсовых работ
Для выполнения КР студенту руководителем выдается индивидуальное задание, в котором указывается тема работы, содержащая формулировку задания на программирование. Тема КР определяется основным содержанием вышеперечисленных дисциплин – разработка иерархии классов и главной функции main() или разработки компьютерной игры.
Разработка компьютерной игры является заданием повышенной сложности. В ходе выполнения задания на КР изучаются методы алгоритмизации задач обработки информации, осваиваются концепции процедурного и объектно-ориентированного программирования. Студент развивает навыки работы со сложными логическими конструкциями, учится анализировать алгоритмы поиска оптимальных решений, учится использовать методы теории алгоритмов в практической деятельности.
Задания на КР выдаются с учетом заказов предприятий, научно-исследовательских организаций, учебно-методических подразделений университета.
КР может быть частью научно-исследовательской работы, которая выполняется студентами на предприятии или кафедре.
Варианты заданий на курсовую работу находятся в прилагаемом файле. Номер варианта может не совпадать с номером студента по списку в журнале.
При необходимости, руководитель курсовой работы и студент могут согласовать иной вариант задания на курсовую работу, основывающийся на другой предметной области.
3 Структура и содержание междисциплинарной курсовой работы
Содержание основных разделов пояснительной записки определяется индивидуальным заданием.
Пояснительная записка должна иметь следующие разделы:
Титульный лист
Лист задания
Реферат (1 с.)
Содержание
Перечень условных обозначений, символов, единиц, сокращений и терминов (1 с.)
Введение (1-2 с.)
1 Анализ предметной области и постановка задач курсовой работы (2-3 с.)
2 Описание назначения и возможностей языка программирования (2-3 с.)
3 Описание входной и выходной информации программы (1-2 с.)
4 Описание использованных в программе классов и других средств языка программирования (7-10 с.)
5 Схема алгоритма работы программы (3-4 с.)
6 Текст программы с комментариями (10-15 с.)
Выводы
Перечень ссылок
Приложение. Пример выполнения программы.
Титульный лист и лист задания заполняют в виде специальной формы в соответствии с выданной темой курсовой работы (см. приложение А, Б).
Реферат содержит краткое описание основных результатов курсового проектирования (характеристики пояснительной записки, 5-10 предложений основного текста, список ключевых слов). Образец реферата см. в приложении В.
Во введении следует указать цель и основные задачи КР, обосновать актуальность и важность темы работы.
В разделе 1 «Анализ предметной области и постановка задач курсовой работы» необходимо выделить классы, соответствующие выбранной предметной области, а также выбрать алгоритм, который будет реализован в программе.
В разделе 2 «Описание назначения и возможностей языка программирования» должен быть описан круг задач, для решения которых используется язык С++ или другой язык программирования, и обоснован выбор языка программирования для решения задачи КР.
В разделе 3 «Описание входной и выходной информации программы» приводится краткая характеристика задачи, описание структуры и объема выходной и входной информации.
В разделе 4 «Описание использованных в программе классов и других средств языка программирования» приводится перечень использованных классов, синтаксис объявлений, назначение свойств и методов (функций), а также диаграмма классов.
Диаграмма классов должна содержать 3-4 уровня иерархии.
Функции классов разрабатываются с применением процедурной технологии программирования, изучаемой в дисциплине "Алгоритмизация и программирование".
Часть функций должны реализовывать один из алгоритмов, изученных в дисциплине «Теория алгоритмов», например алгоритм поиска или сортировки объектов в массиве.
Функциями классов могут быть get(), set(), print(), input() и т.п.
Функции классов могут содержать решение различных задач, в том числе задач разделов высшей математики, дискретной математики, физики.
В разделе 5 «Схема алгоритма работы программы» необходимо обосновать выбор алгоритма решения задачи КР, привести результаты определения оценки сложности выбранного алгоритма, а также привести схему алгоритма программы, решающей данную задачу.
В разделе 6 «Текст программы с комментариями» приводится текст программы с необходимыми комментариями.
Выводы должны содержать оценку полученных результатов в целом с точки зрения соответствия их заданию, а также рекомендации по их дальнейшему практическому использованию.
Перечень ссылок должен содержать нумерованный набор абзацев, содержащих фамилии и инициалы авторов, наименование, место, издательство и год издания, а также количество страниц для всех литературных источников, ссылки на которые имеются в тексте пояснительной записки курсовой работы.
В приложение следует поместить примеры экранных форм выполнения программы.
Графическая часть КР должна содержать:
- диаграмму классов для выбранной предметной области;
- схему алгоритма решения задачи КР;
- экранные формы работы программы.
Текст работающей программы должен быть приложен к курсовой работе на диске.
Студент-автор работы отвечает за принятые решения и правильность результатов, представленных в работе.
4 МЕТОДИЧЕСКИЕ УКАЗАНИЯ ПО ВЫПОЛНЕНИЮ РАБОТЫ
При работе над разделом 2 «Описание назначения и возможностей языка программирования» необходимо проанализировать литературные источники [1-3], а также Интернет-источники с целью обосновать выбор языка программирования для решения задач КР.
При работе над разделом 5 «Схема алгоритма работы программы» необходимо проанализировать литературные источники [4] и другие с целью обоснования выбора алгоритма решения задачи КР.
