Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Lec08

.pdf
Скачиваний:
9
Добавлен:
10.06.2015
Размер:
2.35 Mб
Скачать

UML. Советы по моделированию

При изображении отношений в UML руководствуйтесь нижеследующими рекомендациями:

выбрав один из стилей оформления линий (прямые или наклонные), в дальнейшем старайтесь его придерживаться;

избегайте пересечения линий;

показывайте только такие отношения, которые необходимы для понимания особенностей группирования элементов модели; скрывайте несущественные (особенно избыточные) ассоциации.

21

UML. Диаграммы классов

UML. Диаграмма класса

23

UML. Моделирование простыхкоопераций

24

UML. Прямое проектирование

Прямымпроектированием(Forward engineering) называется процесс преобразования модели в код путем отображения на некоторый язык реализации.

Прямое проектирование диаграммы классовпроизводитсяследующим образом:

1.Идентифицируйте правила отображения модели на один или несколько язы ков программированияпо вашему выбору.

2.В зависимостиот семантики выбранных языков,вероятно, придется отказаться от использованиянекоторых возможностейUML.

3.Применяйте помеченные значения для специфицированияязыка программирования..

4.Пользуйтесь инструментальными средствами для прямого проектирования моделей.

25

UML. Прямое проектирование

public abstract class EventHandler { EventHandler successor;

private Integer currentEventID; private String source; EventHandler() {}

public void handleRequest() {}

}

26

UML. Обратное проектирование

Обратным проектированием(Reverse engineering) называется процесс преобразования в модель кода, записанного на каком-либоязыке программирования.

Обратное проектирование диаграммы классов осуществляется так:

1.Идентифицируйте правила для преобразования из выбранного вами языка реализации. Это можно сделать на уровне проекта или организации в целом.

2.С помощью инструментального средства укажите код, который вы хотите подвергнуть обратному проектированию. Воспользуйтесь этим средством для созданияновой модели или для модификацииранее созданной.

3.Пользуясьинструментальными средствами, создайте диаграмму классов путем опроса полученной модели.

27

Понятие объекта

В реальном мире каждый предмет или процесс обладает набором статических и динамических характеристик (свойствами и поведением). Поведениеобъекта зависит от его состоянияи внешних воздействий.

Понятие объекта в программе совпадает с обыденным смыслом этого слова: объект представляется каксовокупность данных, характеризующихего состояние,и функций их обработки,

моделирующих его поведение.Вызов функции на выполнение часто называют посылкой сообщенияобъекту.

При создании объектно-ориентированной программы предметная область представляется в виде совокупности объектов. Выполнение программы состоит в том, что объекты обмениваются сообщениями.

28

©Павловская Т.А. (СПбГУ

 

ИТМО)

Абстрагирование и инкапсуляция

При представлении реального объекта с помощью программного необходимо выделить в первом его существенные особенности и игнорировать несущественные. Это называется абстрагированием.

Таким образом, программный объект — это абстракция.

Детали реализации объекта скрыты, он используется через его интерфейс — совокупность правил доступа.

Скрытие деталей реализации называется инкапсуляцией. Это позволяет представить программув укрупненном виде — на уровне объектов и их взаимосвязей, а следовательно, управлять большим объемом информации.

Итак, объект — это инкапсулированная абстракция с четко определенным интерфейсом.

29

©Павловская Т.А. (СПбГУ

 

ИТМО)

Наследование

Важное значение имеет возможность многократного использования кода. Для объекта можно определить наследников, корректирующих или дополняющих его поведение.

Наследованиеприменяется для:

исключения из программы повторяющихся фрагментов кода;

упрощения модификациипрограммы;

упрощения создания новых программ на основе существующих.

Благодаря наследованию появляется возможность использовать объекты, исходный код которых недоступен, но в которые требуется внести изменения.

Наследование позволяет создавать иерархииобъектов. Иерархия представляется в виде дерева, в котором более общие объекты располагаются ближе к корню, а более специализированные — на ветвях и листьях.

30

©Павловская Т.А. (СПбГУ

 

ИТМО)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]