Файл: ОСНОВНЫЕ ТЕОРЕТИЧЕСКИЕ ПОЛОЖЕНИЯ ОБЪЕКТНО-ОРИЕНТИРОВАННОЙ МЕТОДОЛОГИИ.pdf
Добавлен: 28.03.2023
Просмотров: 419
Скачиваний: 2
СОДЕРЖАНИЕ
1. ОСНОВНЫЕ ТЕОРЕТИЧЕСКИЕ ПОЛОЖЕНИЯ ОБЪЕКТНО-ОРИЕНТИРОВАННОЙ МЕТОДОЛОГИИ
1.1 Основные понятия объектно-ориентированного подхода
1.3 Средства реализации объектно-ориентированной технологии программирования
2.1.4 Структура управления моделью
2.2 Описание функционирования предметной области «Организация работы спортивного клуба»
2.3 Построение диаграммы классов предметной области «Организация процессов спортивного клуба»
Отношения показывают различные связи между сущностями. В UML определены следующие типы отношений:
- Зависимость показывает такую связь между двумя сущностями, когда изменение одной из них – независимой – может повлиять на семантику другой – зависимой. Зависимость изображается пунктирной стрелкой, направленной от зависимой сущности к независимой.
- Ассоциация – это структурное отношение, показывающее, что объекты одной сущности связаны с объектами другой. Графически ассоциация показывается в виде линии, соединяющей связываемые сущности. Ассоциации служат для осуществления навигации между объектами. Например, ассоциация между классами «Заказ» и «Товар» может быть использована для нахождения всех товаров, указанных в конкретном заказе – с одной стороны, или для нахождения всех заказов в которых есть данный товар, – с другой. Понятно, что в соответствующих программах должен быть реализован механизм, обеспечивающий такую навигацию. Если требуется навигация только в одном направлении, оно показывается стрелкой на конце ассоциации. Частным случаем ассоциации является агрегирование – отношение вида «целое» – «часть». Графически оно выделяется с помощью ромбика на конце около сущности-целого.
- Обобщение – это отношение между сущностью-родителем и сущностью-потомком. По существу, это отношение отражает свойство наследования для классов и объектов. Обобщение показывается в виде линии, заканчивающейся треугольником, направленным к родительской сущности. Потомок наследует структуру (атрибуты) и поведение (методы) родителя, но в то же время он может иметь новые элементы структуры и новые методы. UML допускает множественное наследование, когда сущность связана более чем с одной родительской сущностью.
- Реализация – отношение между сущностью, определяющей спецификацию поведения (интерфейс) с сущностью, определяющей реализацию этого поведения (класс, компонент). Это отношение обычно используется при моделировании компонент и будет подробнее описано в последующих статьях.
Диаграммы. В UML предусмотрены следующие диаграммы:
- Диаграммы, описывающие поведение системы:
- Диаграммы состояний (State diagrams),
- Диаграммы деятельностей (Activity diagrams),
- Диаграммы объектов (Object diagrams),
- Диаграммы последовательностей (Sequence diagrams),
- Диаграммы взаимодействия (Collaboration diagrams);
- Диаграммы, описывающие физическую реализацию системы:
- Диаграммы компонент (Component diagrams);
- Диаграммы развертывания (Deployment diagrams).
2.1.4 Структура управления моделью
Для того чтобы модель была хорошо понимаемой человеком необходимо организовать ее иерархически, оставляя на каждом уровне иерархии небольшое число сущностей. UML включает средство организации иерархического представления модели – пакеты. Любая модель состоит из набора пакетов, которые могут содержать классы, варианты использования и прочие сущности и диаграммы. Пакет может включать другие пакеты, что позволяет создавать иерархии. В UML не предусмотрено отдельных диаграмм пакетов, но они могут присутствовать на других диаграммах. Пакет изображается в виде прямоугольника с закладкой.
UML обеспечивает.
- иерархическое описание сложной системы путем выделения пакетов;
- формализацию функциональных требований к системе с помощью аппарата вариантов использования;
- детализацию требований к системе путем построения диаграмм деятельностей и сценариев;
- выделение классов данных и построение концептуальной модели данных в виде диаграмм классов;
- выделение классов, описывающих пользовательский интерфейс, и создание схемы навигации экранов;
- описание процессов взаимодействия объектов при выполнении системных функций;
- описание поведения объектов в виде диаграмм деятельностей и состояний;
- описание программных компонент и их взаимодействия через интерфейсы;
- описание физической архитектуры системы.
Язык UML было бы затруднительно использовать при реальном моделировании программных средств без инструментальных средств визуального моделирования. Такие средства позволяют оперативно представлять диаграммы на экране дисплея, документировать их, генерировать заготовки программных кодов на различных объектно-ориентированных языках программирования, создавать схемы баз данных. Большинство из них включают возможности реинжиниринга программных кодов – восстановления определенных проекций модели программных средств путем автоматического анализа исходных кодов программ, что очень важно для обеспечения соответствия модели и кодов и при проектировании систем, наследующих функциональность систем-предшественников.
2.2 Описание функционирования предметной области «Организация работы спортивного клуба»
В зависимости от характера связей между подразделениями предприятия различают следующие типы организационных структур: линейную, функциональную, линейно-функциональную и матричную.
В работе данного спортивного клуба используется линейная структура управления.
Спортивный клуб решает следующие задачи:
- вовлечение молодежи и членов их семей в систематические занятия физической культурой и спортом;
- воспитание физических и морально-волевых качеств, укрепление здоровья и снижение заболеваемости, повышение уровня профессиональной готовности, социальной активности молодежи;
- организация и проведение массовых оздоровительных, физкультурных и спортивных мероприятий;
- создание спортивных любительских объединений, клубов, секций и команд по видам спорта;
- пропаганда физической культуры и спорта, здорового образа жизни, организация содержательного досуга, привлечение широких масс молодежи к массовым общественно-политическим мероприятиям
Спортивный клуб выполняет следующие функции:
- осуществляет внедрение физической культуры и спорта в деятельность молодежи, их быт и отдых; пропагандирует здоровый образ жизни, ведет борьбу по преодолению вредных привычек;
- создает необходимые организационно-методические условия для занятий различными формами и видами физической культуры и спорта в соответствии со сложившимися в стране традициями;
- внедряет новые формы и методы физического воспитания, передовой опыт и достижения науки; рационально и эффективно использует материальную базу;
- всемерно развивает общественные начала в массовой физкультурно-оздоровительной и спортивной работе;
- оказывает помощь общеобразовательным школам, колледжам в организации массовой оздоровительной, физкультурной и спортивной работы;
- организует учебно-тренировочный процесс в спортивных секциях (сборных командах);
- разрабатывает и реализует календарные планы массовых оздоровительных, физкультурных и спортивных мероприятий, обеспечивает безопасность их проведения;
- обеспечивает контроль за учебно-тренировочным процессом в секциях спортивного клуба по подготовке спортсменов высшей спортивной квалификации, способствует созданию необходимых условий для роста их спортивного мастерства;
- организует совместно с органами здравоохранения медицинский контроль над состоянием здоровья занимающихся физической культурой и спортом в секциях (сборных командах);
- составляет текущие и перспективные планы развития массовой физкультурно-оздоровительной и учебно-спортивной работы, сметы расходов клуба.
- в пределах своей компетентности осуществляет подбор и расстановку физкультурных кадров;
- может иметь флаг, эмблему, спортивную форму, штамп, бланк;
- проводит массовые соревнования, спартакиады (универсиады), учебно-тренировочные сборы;
- в соответствии с утвержденным порядком направляет команды и отдельных спортсменов на соревнования;
- выдает соответствующие удостоверения (значки) членам сборных команд вуза;
2.3 Построение диаграммы классов предметной области «Организация процессов спортивного клуба»
В спортивном клубе работают четыре сеции на базе клуба:
- Баскетбол
- Волейбол
- Футбол
- Теннис.
При обращении кандидатов-спортсменов в спортивный клуб с целью записаться в какую-либо секцию осуществляется регистрация, которая предполагает следующие действия:
- Данные о спортсменах заносятся в таблицу с указанием 5 полей: Фамилия, Имя, Возраст, Телефон, Секция.
- Спортсмены распределяются по секциям, в которые подана заявка.
- Родителям спортсменов предоставляется расписание секций спортивного клуба.
Для организации корректной работы клуба, согласования работы секций, занятости тренеров, администратор спортивного клуба заполняет расписание.
При вступлении в клуб спортсмен заносится в таблицу с указанием секции. Все занимающиеся в клубе спортсмены должны быть занесены в главную таблицу с указанием секции.
Для наглядного представления процессов работы спортивного клуба была построена UML диаграмма (Рис 2.3.1).
Рис. 2.3.1 Объектно-ориентированная модель спортивного клуба.
3. ПОСТРОЕНИЕ ОБЪЕКТНОЙ МОДЕЛИ ПРЕДМЕТНОЙ ОБЛАСТИ «ОРГАНИЗАЦИЯ РАБОТЫ СПОРТИВНОГО КЛУБА» С ПРИМЕНЕНИЕМ ВИЗУАЛЬНОЙ СРЕДЫ ПРОГРАММИРОВАНИЯ DELPHI
3.1 Описание структуры приложения
Данное приложение входит в состав пакета Sport. Оно состоит из класса: class TPeople.
Класс «TPeople» позволяет создавать и накапливать информацию о детях, занимающихся в данном спортивном клубе, который получил название «Огонек». Он имеет пять полей: Имя задается строкой (string) «Name»; Фамилия задается строкой (string) «Famil»; Возраст хранится в числовой переменной (int) «Age»; телефон задается строкой (string) «Tel»; Секция в которой занимается спортсмен задается строкой (string) «Sekc».
TPeople = class
Name: String;
Famil: String;
Age: Integer;
tel: String;
sekc: String;
constructor Create(AName: String);
end;
При этом ввод полей используется двумя способами:
Загрузка значения из сохраненного файла с расширением LST. (Рис 3.1.1.)
Метод организован с помощью функции OpenDlg, при этом каждая строка класса считывается, как отдельное значение.
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;
Рис. 3.1.1 Загрузка файла.
Вторым методом заполнения таблицы является ввод с помощью компонентов Edit.(Рис. 3.1.2.)
Рис. 3.1.2 Заполнение таблицы путем компонента Edit.
Причем значение поля «Секция» выбирается из значений компонента Combobox и присваивается строке «Sekc». (Рис.3.1.3)
Рис. 3.1.3 Компонент Combobox.
Введенные значения могут корректироваться путем выбора нужного значения и нажатия кнопки «Изменить» (Рис. 3.1.4)
Рис. 3.1.4 Изменение значений.
В программе предусмотрено удаление значение путем удаление одной записи (Рис. 3.1.5) и удаления всех записей (Рис. 3.1.6).
Удаление одной записи осуществляется с помощью выбора значения и нажатия кнопки «Удалить».
Рис. 3.1.5 Удаление одной записи.
Для того, чтобы очистить все записи нужно нажать кнопку «Очистить».
Рис. 3.1.6 Кнопка «Очистить».
Оба способа удаления осуществлены следующими методами:
procedure TMainForm.ToolButton4Click(Sender: TObject);
begin
with PersonsList do Items.Delete(ItemIndex);
end;
procedure TMainForm.ToolButton5Click(Sender: TObject);
begin
PersonsList.Items.Clear;
end;
После заполнения таблицы спортсменов появляется необходимость сохранить ее для дальнейшего использования. Это осуществляется нажатием кнопки «Сохранить» (Рис. 3.1.7). После нажатия этой кнопки осуществляется открытие диалогового окна, куда указывается папка хранения файла и его название. (Рис. 3.1.8).
Рис. 3.1.7 Кнопка «Сохранить».