Построение объектной модели предметной области "организация процессов спортивного клуба" с применением языка моделирования UML
Основные теоретические положения объектно–ориентированной технологии программирования. Характеристика языка и словарь моделирования UML. Представление управления моделью. Построение диаграммы классов и описание функционирования предметной области.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 11.05.2015 |
Размер файла | 859,4 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Рис. 3.1.7 Кнопка «Сохранить».
Рис. 3.1.8 Окно сохранения файла.
Как уже упоминалось ранее, в спортивном клубе у каждой секции есть свое расписание. В программе открыть расписание можно с помощью кнопки «Посмотреть расписание» (Рис. 3.1.9). После нажатия данной кнопки открывается вторая форма приложения спортклуба (Рис. 3.1.10).
Рис. 3.1.9 Окно сохранения файла.
Рис. 3.1.10 Форма расписания.
Выбор секции осуществляется с помощью компонента Combobox, таким же способом, как и указывался ранее. После выбора секции при нажатии кнопки «расписание занятий», на форму в компоненты Label выводится время занятий по дням недели (Рис. 3.1.11).
Рис. 3.1.11 Форма расписания.
Расписание организовано с помощью следующего метода:
if
Combobox1.ItemIndex = 0 then
Begin
Label6.Caption:= '19.30';
label7.Caption:= ' ';
label8.Caption:= '16.00';
label9.Caption:= ' ';
label10.Caption:='17.00';
end;
if
Combobox1.ItemIndex = 1 then
Begin
Label6.Caption:= '15.30';
label7.Caption:= ' ';
label8.Caption:= '20.00';
label9.Caption:= ' ';
label10.Caption:='19.30';
end;
if
Combobox1.ItemIndex = 2 then
Begin
Label6.Caption:= '';
label7.Caption:= '16.15 ';
label8.Caption:= ' ';
label9.Caption:= '17.00 ';
label10.Caption:=' ';
end;
if
Combobox1.ItemIndex = 3 then
Begin
Label6.Caption:= ' ';
label7.Caption:= '19.15 ';
label8.Caption:= ' ';
label9.Caption:= '20.00 ';
label10.Caption:=' ';
end;
Таким образом, получаем дерево диалога с интерфейсом приложения (Рис. 3.1.12)
Рис. 3.1.11 Схема работы с интерфейсом приложения.
ЗАКЛЮЧЕНИЕ
Объектно-ориентированный подход использует объектную декомпозицию, при этом статическая структура системы описывается в терминах объектов и связей между ними, а поведение системы описывается в терминах обмена сообщениями между объектами. Каждый объект системы обладает своим собственным поведением, моделирующим поведение объекта реального мира.
В результате данного исследования, рассмотрены объектно-ориентированной методологии и технологии программирования на примере языка Object Pascal, методов и инструментов построения объектных моделей предметных областей. Полученные знания были применены для построения объектной модели предметной области «Организация работы спортивного клуба».
Для достижения цели данного исследования были выполнены следующие задачи:
· Изучены основные теоретические положения объектно-ориентированной методологии.
· Рассмотрен язык UML и построена объектная модель предметной области с применением данного языка.
· Разработано приложение, использующее набор классов для представления информации о спортсменах.
В процессе написания курсового проекта использовались следующие методы исследования:
· Описательный метод применяется при изложении теоретических аспектов проблемы и краткой характеристике объекта исследования.
· Метод сравнения и анализа. Позволяет сопоставлять различные взгляды на рассматриваемую тему и провести диагностику объекта исследования.
· Системный подход. Был использован с целью обобщения полученных результатов и выявления их логической взаимосвязи.
СПИСОК ИСТОЧНИКОВ
1. Алгоритмические языки и программирование. Система программирования DELPHI / разраб. Т.А. Лабзина. - М.: Совр. Гум. Ун-т, 2002.
2. Ахангельский А.Я. Программирование в Delphi 7. - М.: ООО «Бином-Пресс», 2003 г. - 1152 с.
3. Голицына О.Л. и др. Языки программирования. - М.: Форум; Инфра-М, 2008.
4. Дарахвелидзе П.Г., Марков Е.П. Программирование в Delphi 7. -СПб.: БХВ-Петербург, 2003. - 784 с.
5. Семакин И.Г., Шестаков А.П. М. Основы программирования. -М.: Академия, 2003. - 438 с.
6. Сорокин А.В. Delphi. Разработка баз данных. - СПб.: Питер, 2005. - 477с.
7. Фаронов В.В. Система программирования Delphi. - СПб.: БХВ-Петербург, 2004. - 912 с.
Приложение А
Код клиент-приложения главной стрницы
unit Main;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Buttons, Spin, ImgList, ComCtrls, ToolWin;
type
TMainForm = class(TForm)
PersonsList: TListBox;
GroupBox1: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
FNameEdit: TEdit;
LNameEdit: TEdit;
edttel: TEdit;
AgeEdit: TSpinEdit;
OpenDlg: TOpenDialog;
SaveDlg: TSaveDialog;
ToolBar1: TToolBar;
AddBtn: TToolButton;
EditBtn: TToolButton;
RestBtn: TToolButton;
DelBtn: TToolButton;
ClearBtn: TToolButton;
ToolButton6: TToolButton;
OpenBtn: TToolButton;
SaveBtn: TToolButton;
ToolButton9: TToolButton;
ImageList1: TImageList;
ComboBox1: TComboBox;
Button1: TButton;
Button2: TButton;
ComboBox2: TComboBox;
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure ToolButton5Click(Sender: TObject);
procedure ToolButton7Click(Sender: TObject);
procedure ToolButton8Click(Sender: TObject);
procedure ToolButton9Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
TPeople = class
Name: String;
Famil: String;
Age: Integer;
tel: String;
sekc: String;
constructor Create(AName: String);
end;
var
MainForm: TMainForm;
implementation
uses Unit1;
{$R *.DFM}
constructor TPeople.Create(AName: String);
begin
inherited Create;
Name:= AName;
end;
procedure TMainForm.ToolButton1Click(Sender: TObject);
begin
PersonsList.Items.AddObject('Unknown', TPeople.Create('Unknown'));
end;
procedure TMainForm.ToolButton2Click(Sender: TObject);
begin
with PersonsList, PersonsList.Items do
begin
if ItemIndex = -1
then Exit;
if not Assigned(Objects[ItemIndex])
then Objects[ItemIndex]:= TPeople.Create(Items[ItemIndex]);
with Objects[ItemIndex] as TPeople do
begin
FNameEdit.Text:= Name;
LNameEdit.Text:= Famil;
AgeEdit.Value:= Age;
edttel.Text:= tel;
Combobox1.SelText:= sekc;
end;
end;
end;
procedure TMainForm.ToolButton3Click(Sender: TObject);
begin
if PersonsList.ItemIndex = -1 then
begin
ShowMessage('Сначала выберите элемент');
Exit;
end;
with PersonsList do
with Items.Objects[ItemIndex] as TPeople do
begin
Name:= FNameEdit.Text;
Famil:= LNameEdit.Text;
Age:= AgeEdit.Value;
tel:= edttel.Text;
if
Combobox1.ItemIndex = 0 then
begin
sekc:= 'Баскетбол';
end;
if
Combobox1.ItemIndex = 1 then
begin
sekc:= 'Футбол';
end;
if
Combobox1.ItemIndex = 2 then
begin
sekc:= 'Волейбол';
end;
if
Combobox1.ItemIndex = 3 then
begin
sekc:= 'Теннис';
end;
Items[ItemIndex]:= sekc+'- '+Name+' '+Famil+' телефон:'+tel;
end;
FNameEdit.Clear;
LNameEdit.Clear;
AgeEdit.text:='0';
edttel.Clear;
ComboBox1.ItemIndex:=-1;
end;
procedure TMainForm.ToolButton4Click(Sender: TObject);
begin
with PersonsList do Items.Delete(ItemIndex);
end;
procedure TMainForm.ToolButton5Click(Sender: TObject);
begin
PersonsList.Items.Clear;
end;
procedure TMainForm.ToolButton7Click(Sender: TObject);
var F: TextFile;
i: Integer;
begin
try
with OpenDlg, PersonsList.Items do
begin
if Not Execute then Exit;
LoadFromFile(FileName);
AssignFile(F, Copy(FileName,1,Length(FileName)-4)+'.lso');
Reset(F);
i:= 0;
while Not EOF(F) do
begin
Objects[i]:= TPeople.Create('');
Readln(F, (Objects[i] as TPeople).Name);
Readln(F, (Objects[i] as TPeople).Famil);
Readln(F, (Objects[i] as TPeople).Age);
Readln(F, (Objects[i] as TPeople).tel);
Readln(F, (Objects[i] as TPeople).sekc);
Inc(i);
end;
CloseFile(F);
end;
except
on E: EFOpenError do ShowMessage('Ошибка открытия файла');
end;end;
procedure TMainForm.ToolButton8Click(Sender: TObject);
var F: TextFile;
i: Integer;
begin
try
with SaveDlg, PersonsList.Items do
begin
if Not Execute then Exit;
SaveToFile(FileName);
AssignFile(F, Copy(FileName,1,Length(FileName)-4)+'.lso');
Rewrite(F);
for i:= 0 to Count - 1 do
if Objects[i] <> Nil then
begin
Writeln(F, (Objects[i] as TPeople).Name);
Writeln(F, (Objects[i] as TPeople).Famil);
Writeln(F, (Objects[i] as TPeople).Age);
Writeln(F, (Objects[i] as TPeople).tel);
Writeln(F, (Objects[i] as TPeople).sekc);
end;
CloseFile(F);
end;
except
on E: EFOpenError do ShowMessage('Ошибка открытия файла');
end;
end;
procedure TMainForm.ToolButton9Click(Sender: TObject);
begin
Close;
end;
procedure TMainForm.Button1Click(Sender: TObject);
begin
form1.Show;
end;
procedure TMainForm.Button2Click(Sender: TObject);
var
I,J:integer;
F: TextFile;
begin
if PersonsList.ItemIndex = -1 then
begin
ShowMessage('Сначала выберите элемент');
Exit;
end;
with PersonsList do
with Items.Objects[ItemIndex] as TPeople do
begin
//PersonsList.ItemIndex:=j;
begin
if
Combobox2.ItemIndex = 0 then
begin
i:= PersonsList.Items.Count;
{программа}
// for i:=0 to PersonsList.Count -1 do
//for j:= i to PersonsList.Count -1 do
//программа ломается while i>PersonsList.ItemIndex do
// Виснет repeat
if Sekc = 'Баскетбол' then ItemIndex:=ItemIndex
else
Items.Delete(ItemIndex);
ItemIndex:=ItemIndex+1;
{repeat
Button2.Click;
until i<=ItemIndex; }
end;
end;
if
Combobox2.ItemIndex = 1 then
begin
if Sekc = 'Футбол' then ItemIndex:=ItemIndex
else
Items.Delete(ItemIndex);
ItemIndex:=ItemIndex+1;
end;
if
Combobox2.ItemIndex = 2 then
begin
if Sekc = 'Волейбол' then ItemIndex:=ItemIndex
else
Items.Delete(ItemIndex);
ItemIndex:=ItemIndex+1;
end;
if
Combobox2.ItemIndex = 3 then
begin
if Sekc = 'Теннис' then ItemIndex:=ItemIndex
else
Items.Delete(ItemIndex);
ItemIndex:=ItemIndex+1;
end;
if
Combobox2.ItemIndex = 4 then
begin
try
with OpenDlg, PersonsList.Items do
begin
if Not Execute then Exit;
LoadFromFile(FileName);
AssignFile(F, Copy(FileName,1,Length(FileName)-4)+'.lso');
Reset(F);
i:= 0;
while Not EOF(F) do
begin
Objects[i]:= TPeople.Create('');
Readln(F, (Objects[i] as TPeople).Name);
Readln(F, (Objects[i] as TPeople).Famil);
Readln(F, (Objects[i] as TPeople).Age);
Readln(F, (Objects[i] as TPeople).tel);
Readln(F, (Objects[i] as TPeople).sekc);
Inc(i);
end;
CloseFile(F);
end;
except
on E: EFOpenError do ShowMessage('Ошибка открытия файла');
end;
end;
end;
end;
end.
Размещено на Allbest.ru
Подобные документы
Краткая характеристика предметной области. Актуальность разработки объектно-ориентированной модели информационной системы для учебной библиотеки. Создание диаграммы вариантов использования, последовательности, кооперативной диаграммы, диаграммы классов.
курсовая работа [381,8 K], добавлен 01.06.2009Разработка объектно-ориентированной подсистемы складского учета для фирмы "КавказЮгАвто". Краткая характеристика предметной области. Построение диаграмм размещения, прецедентов, последовательности, компонентов и классов. Генерация программного кода C++.
курсовая работа [6,6 M], добавлен 26.06.2011Основные элементы объектной модели. Сущность и преимущества объектно-ориентированного подхода, понятие объекта и класса. Унифицированный язык моделирования UML. Диаграммы классов и взаимодействия: назначение, построение и примеры использования.
реферат [273,2 K], добавлен 09.06.2009Рассмотрение особенностей структурного разбиения предметной области. Характеристика функциональной и информационной модели бизнес-процессов предметной области. Построение IDEF0- и IDEF1Х-модели заданной предметной области с помощью пакета Design/IDEF.
контрольная работа [486,5 K], добавлен 08.06.2019Описание предметной области "Магазин по продаже компьютерных комплектующих". Построение ER и реляционной модели данных, сущности и связи. Создание ER и реляционной модели данных, запросов, представлений, хранимых процедур для предметной области.
курсовая работа [32,2 K], добавлен 15.06.2014Актуальность и практическая значимость программных систем компьютерного клуба. Анализ предметной области. Диаграмма классов, физическая модель системы. Разработка визуального проекта ИС, с использованием языка UML2.0 и среды моделирования Microsoft Visio.
курсовая работа [1,7 M], добавлен 21.06.2014Анализ предметной области "Конкурс поэтов" на основе объектно-ориентированного подхода. Разработка оконного приложения и описание информационной модели предметной области. Описание разработанных процедур С++ и результатов тестирования приложения.
курсовая работа [355,9 K], добавлен 18.06.2013- Построение информационной модели предприятия пищевой промышленности АНО "Центр интернет-образования"
Функциональное моделирование IDEF0. Описание всех процессов работы отдела техподдержки. Декомпозиция контекстной диаграммы и основных процессов. Построение модели процессов предметной области в стандарте IDEF1Х. Интерфейс программы контроля трафика.
отчет по практике [1,8 M], добавлен 22.11.2014 Построение инфологической модели предметной области методом ER- диаграммы. Создание отношений БД с помощью языка SQL. Заполнение базы данных. Создание запросов к базе данных компьютерного клуба. Создание отчета с помощью Microsoft Word и Microsoft Excel.
курсовая работа [50,0 K], добавлен 26.02.2009Краткая характеристика предметной области. Создание диаграммы прецедентов, последовательности, сотрудничества, классов, размещения, компонентов. Добавление деталей к описаниям операций и определение атрибутов КЛАССОВ. Генерация программного кода C++.
курсовая работа [185,0 K], добавлен 29.06.2011