
Курсовая_работа_ГоловковИЕ_12002108
.pdfЗарегистрировано
« » |
20 г. |
______________________
подпись (расшифровка подписи)
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«БЕЛГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ»
(НИУ «БелГУ»)
ИНСТИТУТ ИНЖЕНЕРНЫХ И ЦИФРОВЫХ ТЕХНОЛОГИЙ
Кафедра информационных и робототехнических систем
РАЗРАБОТКА ПРОГРАММЫ "ЖИВОТНЫЙ МИР" С
ИСПОЛЬЗОВАНИЕМ ОБЪЕКТОВ, СОДЕРЖАЩИХ ИНФОРМАЦИЮ ОБ ОСНОВНЫХ ОБЪЕКТАХ ЖИВОТНОГО МИРА.
Курсовая работа по дисциплине «Объектно-ориентированное программирование»
студента очной формы обучения направления подготовки
09.03.02 «Информационные системы и технологии»
2 курса группы 12002108
Головкова Игоря Евгеньевича
Допущена к защите
« » 2022 г.
________ ____________________
Подпись (расшифровка подписи)
Оценка______________________
« » 2022 г.
________ ____________________
Подпись (расшифровка подписи)
Научный руководитель:
к. т. н., доцент В. И. Фёдоров
БЕЛГОРОД 2022
|
СОДЕРЖАНИЕ |
|
СОДЕРЖАНИЕ ....................................................................................................... |
2 |
|
ВВЕДЕНИЕ.............................................................................................................. |
3 |
|
1 РАЗРАБОТКА ПРОГРАММЫ «ЖИВОТНЫЙ МИР»..................................... |
5 |
|
1.1 |
Основные таксономические ранги животных ............................................ |
5 |
1.2 |
Общая постановка задачи ............................................................................. |
5 |
2 |
РАЗРАБОТКА ПРОГРАММНОГО ПРОДУКТА.......................................... |
7 |
2.1 |
Иерархия классов и UML-диаграмма .......................................................... |
7 |
2.2 |
Класс Animals ................................................................................................. |
9 |
2.3. Класс doAnimals ............................................................................................. |
10 |
|
2.4 |
Класс Main ....................................................................................................... |
16 |
2.5 |
Класс AnimalsXML ......................................................................................... |
17 |
3 |
ТЕСТИРОВАНИЕ РАЗРАБОТАННОГО ПРОГРАММНОГО |
|
ОБЕСПЕЧЕНИЯ.................................................................................................... |
19 |
|
ЗАКЛЮЧЕНИЕ ..................................................................................................... |
24 |
|
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ ........................................... |
25 |
|
ПРИЛОЖЕНИЕ А ................................................................................................. |
26 |
|
ПРИЛОЖЕНИЕ Б.................................................................................................. |
27 |
|
ПРИЛОЖЕНИЕ В ................................................................................................. |
31 |
|
ПРИЛОЕЖЕНИЕ Г ............................................................................................... |
40 |
2
ВВЕДЕНИЕ
Фауна России насчитывает около 150 тысяч видов животных, что равняется примерно 9 % всей фауны мира. Одних только позвоночных животных насчитывается в России > 1300 видов, а насекомых > 70 000 видов. И при движении с севера на юг и от равнин в горы фауна России становится более разнообразна и богата. [1]
Отдельным подтипом являются позвоночные – доминирующая (наряду с насекомыми) на земле и в воздушной среде группа животных. Обилие и разнообразие позвоночных делают их важным экологическим фактором. Роль позвоночных в современном животном мире настолько велика, что всех остальных животных объединяют в группу (несистематическую) беспозвоночные, несмотря на то что они имеют очень мало общего друг с другом. По сравнению с низшими хордовыми – бесчерепными и оболочниками — они характеризуются значительно более высоким уровнем организации, что наглядно выражено как в их строении, так и в физиологии. Если низшие хордовые ведут сидячий (прикреплённый) или малоподвижный образ жизни, то поведение позвоночных несравненно более сложно. Среди них нет видов с сидячим образом жизни. Активному образу жизни представителей подтипа отвечает высокий уровень развития их нервной системы.[2]
Позвоночных в фауне России > 4000 видов, что составляет > 8 % мирового разнообразия. Среди них:
-птицы, > 730 видов (> 8 % от мирового разнообразия);
-млекопитающие, > 320 видов (> 7 % от мирового разнообразия);
-пресмыкающиеся, > 70 видов (> 0,8 % от мирового разнообразия);
-земноводные, > 30 видов (> 0,6 % от мирового разнообразия);
-рыбы, > 2900 видов (> 8,5 % от мирового разнообразия).
Вмире каждый год описывается несколько сотен новых для науки видов животных, и для сохранения информации обо всех этих видах удобно использовать программу, которая бы позволяла пользователю добавлять новые виды животных, изменять, сохранять в файл на постоянном хранилище памяти (жёстком диске) и считывать их из него.
Цель работы: составить программное приложение на языке Java, позволяющее создать изменяемое хранилище информации о животных с функциями для работы с ним.
Задачи:
-изучить теоретический материал, который необходим для выполнения курсовой работы;
-разработать структуры данных и UML-диаграммы классов;
-закрепить полученные навыки написания программ на языке Java и разработать приложение, которое позволит работать с хранилищем информации о животных.
3
Курсовая работа включает 3 раздела.
Впервом разделе будет описана теоретическая составляющая о группах животных, ее характеристики и общая постановка задачи, реализованная в данной работе.
Во втором разделе рассматриваются необходимые структуры данных и алгоритмы для реализации программного приложения, также представлена реализация консольного приложения на языке программирования.
Втретьем разделе производится тестирование программного приложения.
Курсовая работа состоит из 41 страницы, 23 иллюстраций и 4 приложений.
4
1 РАЗРАБОТКА ПРОГРАММЫ «ЖИВОТНЫЙ МИР»
1.1 Основные таксономические ранги животных
Таксон – группа в классификации, состоящая из дискретных объектов, объединяемых на основании общих свойств и признаков. Классификационные системы, использующие понятие таксона, обычно носят иерархический характер. Основная наука, использующая таксоны – биологическая систематика. Разделение животных на таксоны и их иерархия позволит проще реализовать принципы наследования и создавать классы, использующиеся в объектно-ориентированном программировании.
В курсовой работе рассматривается биологическое царство животных. Этот таксономический ранг самый высокий среди основных. Далее все животные разделяются на типы (отделы), и для представления в данной лабораторной работе выбран подтип позвоночные типа хордовые – его высший подтип, так как позвоночные, как было описано ранее, играют большую роль в современном животном мире и являются доминирующей (наряду с насекомыми) на земле и в воздушной среде группой животных.
Затем более низким таксономическим рангом, требующим представления, является класс. Тип позвоночных представлен такими классами, как птица, млекопитающие, пресмыкающиеся (рептилии), земноводные (амфибии) и рыбы.
Для базового разделения животных по названию будет использоваться их биологический вид – основная структурная единица биологической систематики живых организмов. Также полное название вида часто включает в себя название биологического рода, например, лисья белка, а не только «белка» или «лисья».
Для разделения каждого отдельного животного внутри вида будет использоваться его размер, выявляемый эмпирическим методом (например, измерением или сравнением). Также для понимания способа питания/кормления животного содержится параметр хищничества.
1.2 Общая постановка задачи
Приложение должно иметь понятный для пользователя интерфейс и реализовывать следующие функции:
1.Создание объектов;
2.удаление объектов;
3.изменение характеристик объектов;
4.демонстрация списка объектов;
5.сохранение состояния объектов в файле (формата XML);
6.считывание объектов из файла (формата XML).
5
Пользователь, изменяющий каким-либо образом содержащуюся информацию, должен будет выбирать класс животного и вводить его параметры.
Так, для добавления нового животного потребуется ввести название его вида, размер и хищность. Для предотвращения добавления заранее некорректной информации будут выводиться предупреждения о вводе неправильного значения параметра. Метод удаления животного из списка также потребует ввести все значения его параметров, чтобы было удалено именно соответствующее животное. Метод изменения параметров животного потребует ввести все значения текущих параметров нужного животного, а также те, на которые требуется изменить.
Демонстрация текущей информации о животных реализована методом вывода в консоль. Её можно будет сохранить в XML-файл, используя соответствующий метод, где будут указаны все введённые (и выбранные) значения параметров животных. Затем, сохранённую информацию, например, при следующем запуске программы, можно вновь получить из используемого XML-файла также с помощью соответствующего метода.
В данном разделе были рассмотрены основные сведения о таксономических рангах и поставлена общая задача.
6
2 РАЗРАБОТКА ПРОГРАММНОГО ПРОДУКТА
2.1 Иерархия классов и UML-диаграмма
Программа содержит классы:
-Main;
-Animals;
-Bird;
-Mammal;
-Reptile;
-Amphibian;
-Fish;
-doAnimals;
-AnimalsXML.
Класс Main – это главный класс, содержащий точку входа в программу. Также в нём реализованы методы работы с XML-файлом.
Класс Animals – абстрактный класс для описания базовых атрибутов и поведения объектов классов животных.
Классы Bird (птицы), Mammal (млекопитающие), Reptile (пресмыкающиеся (рептилии)), Amphibian (земноводные (амфибии)) и Fish (рыбы) наследуют класс Animas и реализованы аналогично друг другу и содержат:
-коллекцию типа ArrayList для хранения объектов этого класса;
-конструктор с параметрами, проверяющий правильность ввода и соответствие диапазону размеров животных этого класса;
-конструктор без параметров, заполняющий значения атрибутов объекта значениями по умолчанию.
Класс doAnimals реализует операции пользовательского меню, позволяющего вызывать методы работы с объектами (добавление, изменение, удаление и т. д.).
Класс AnimalsXML – «класс-обёртка» для корректной обработки коллекций при работе с XML.
Для демонстрации связей классов разработана UML-диаграмма, представленная на рисунке 2.1.1.
7

Рисунок 2.1.1 – UML-диаграмма
8

2.2 Класс Animals
Поля и конструкторы класса Animals представлены на рисунке 2.2.1. Конструкторы позволяют создавать объекты по введённым значениям атрибутов при работе с пользовательским меню
Рисунок 2.2.1 - Поля и конструкторы класса Animals
Как описано в п. 2.1, классы животных реализованы аналогично друг другу, поэтому далее (на рисунке 2.2.2) продемонстрирован один из них – класс Bird.
9

Рисунок 2.2.2 - Реализация класса Bird
2.3. Класс doAnimals
Класс doAnimals содержит поля numChoiceMenu, numChoiceGroup,
запоминающие введённый пользователем номер функции меню и номер группы животных, а также read, позволяющее считывать информацию (строковую, числовую) из консоли. Первый метод класса doAnimals showMenu выводит в консоль возможные функции меню и предлагает ввести число для последующего их выбора и вызова с помощью оператора switch. Поля и начало первого метода представлены на рисунке 2.3.1.
10