Построение объектной модели предметной области "организация процессов спортивного клуба" с применением языка моделирования 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


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.