oop_kurs
.pdf3.ПОДСИСТЕМА ИНТЕРФЕЙС
3.1.ГРАФИЧЕСКОЕ ПРЕДСТАВЛЕНИЕ ИНТЕРФЕЙСНЫХ
ОКОН
3.1.1 ОСНОВНОЕ ОКНО
Основное окно интерфейса, отображающее стеллажи и книги реализовано в классе Interface. Помимо этого, в данном окне пользователь может выбрать какую книгу «прочитать» или какую книгу положить в стопку.
3.1.2. ОКНО ПАРАМЕТРОВ И ОТОБРАЖЕНИЯ СОСТОЯНИЕ
ОБЪЕКТОВ ПрО
В языке программирования Java возможно создание одного окна для отображения всех необходимых данных. Это возможно при помощи javafx.
Поэтому никаких других окон в программе нет.
3.1.3. ЗАГОЛОВОЧНЫЕ ФАЙЛЫ ИНТЕРФЕЙСНЫХ КЛАССОВ
Класс Interface, предназначенный для графического вывода стеллажей и книг, находится в файле «Interface.java».
import javafx.scene.Group;
import javafx.scene.control.Button; import javafx.scene.control.Label;
import javafx.scene.control.ToggleButton; import javafx.application.Application; import javafx.event.ActionEvent;
import javafx.event.EventHandler; import javafx.scene.Scene;
import javafx.scene.shape.Line; import javafx.scene.text.Font; import javafx.scene.text.Text; import javafx.stage.Stage;
11
4.ПОДСИСТЕМА «МОДЕЛЬ»
4.1ПЕРЕЧЕНЬ СОБЫТИЙ, ИЗМЕНЯЮЩИХ СОСТОЯНИЕ
МОДЕЛИ ПрО
1)После нажатия на книгу, находящуюся в начальной стопке, при условии, что книга находится в самом верху стопки, она будет помещена на полку.
2)Если количество книг на полке становится максимально возможным,
следующая книга будет помещена автоматически на другую полку.
3)Пользователь может положить книгу в отдельную стопку. Для этого необходимо нажать на кнопку «Temp Stack Mode». После этого, все выбранные книги будут класться в отдельную стопку по правилу – следующая книга кладется на предыдущую. Забрать книгу из данной стопки можно если эта книга находится наверху стопки. Для выхода из режима стопки, пользователь должен нажать «Temp Stack Mode».
4)Если нажать на книгу, находящуюся на полке, место, занятое этой книгой освободится, а пользователь увидит номер этой книги в верхнем правом углу.
5)Кнопка «Generate» предназначена для пересоздания трех начальных стопок книг.
6)Если пользователь будет нажимать на книги, не являющиеся верхними для своей стопки, то никаких действий не будет произведено.
4.2 ЗАГОЛОВОЧНЫЕ ФАЙЛЫ КЛАССОВ МОЖЕЛИ ПрО
Класс bookshelf, предназначенный для работы с книгами, находится в файле «bookshelf.java»
import javafx.scene.Group; import javafx.event.ActionEvent; import javafx.event.EventHandler;
import javafx.scene.canvas.GraphicsContext;
12
import javafx.scene.control.Button; import javafx.scene.control.Label; import javafx.scene.layout.Pane; import javafx.scene.text.Font; import javafx.scene.canvas.Canvas; import java.awt.*;
import java.util.Collections; import java.util.Random;
import static java.lang.Math.round;
13
5. СКРИНШОТЫ КОНТРОЛЬНОГО ПРИМЕРА РАБОТЫ
РЕАЛИЗОВАННОГО ПРИЛОЖЕНИЯ
Рисунок 3. Стартовое окно
Рисунок 4. Изменение стопок книг после нажатия кнопки "Generate"
14
Рисунок 5. При нажатии на не верхнюю книгу, ничего не происходит
Рисунок 6. Книги заполняют стеллажи слева-направо
15
Рисунок 7. Заполнение временной стопки после нажатия "Temp Stack Mode"
Рисунок 8. Выключение режима временной стопки
16
Рисунок 9. При включении режима временной стопки, книги из этой стопки можно доставать
Рисунок 10. Все книги расположены на стеллажах
17
Рисунок 11. После того, как пользователь возьмет книгу со стеллажа, он увидит ее номер
Рисунок 12. Для возвращения к начальному положению книг, необходимо нажать "Generate"
18
6.ВЫВОДЫ ПО КУРСОВОЙ РАБОТЕ
Входе данной курсовой работы было разработано приложение для разложения книг по стеллажам. Приложение реализовано на языке Java с
использованием библиотеки javafx. Приложение позволяет пользователю поставить книгу на стеллаж, достать ее для «прочтения» или положить ее во временную стопку. Функционал приложения полностью соответствует всем поставленным задачам. Работы программы была приведена в разделе 5.
Был проведен анализ предметной области, выделены объекты и связи между ними, была построена модель «сущность-связь».
Была построена диаграмма классов в соответствии с моделью
«сущность-связь» и написанной программой. К диаграмме классов были представлены таблицы с описаниями, наследованием, атрибутами и методами.
Реализованное приложение представляет из себя объектно-
ориентированную программу, состоящую из модулей Интерфейс и Модель.
Модуль Интерфейс состоит из интерфейсного окна: Interface – основное
окно.
Модуль Модель состоит из класса, описывающего работу и логику программы.
19
