Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Диаграммы состоянийДиаграмма состояний (рис. 14) отображает поведение объектов одного класса в динамике, связь состояний объектов с событиями и определяет: · какие типичные состояния проходит объект; · какие события ведут к изменению состояния объекта; · какие действия выполняет объект, когда он получает сообщение об изменении состояния; · как объекты создаются и уничтожаются (входные и выходные точки). Состояние представляет ситуацию, в течение которой выполняется непрерывная деятельность или объект находится в стационарном положении. Состояние может быть композитным, т. е. включать другие состояния. На диаграмме имеются два специальных состояния – начальное и конечное. Начальное состояние соответствует состоянию объекта, когда он только что создан. Конечное состояние соответствует состоянию объекта непосредственно перед его уничтожением. На диаграмме может быть одно начальное состояние и сколько угодно конечных состояний (их может не быть вообще). Когда объект находится в конкретном состоянии, могут выполняться процессы, которые называются действиями (actions). Рис. 14. Диаграмма состояний
С состоянием можно связывать данные пяти типов: деятельность, входное действие, выходное действие, событие и история состояния. Деятельность (activity) – это поведение, реализуемое объектом, пока он находится в данном состоянии. Деятельность – это прерываемое поведение. Оно может выполняться до своего завершения, пока объект находится в данном состоянии, или может быть прервано переходом объекта в другое состояние. Деятельность изображают внутри состояния, ей должно предшествовать слово do (выполнять). Входное действие (entry action) – это поведение, которое выполняется, когда объект переходит в данное состояние. Действие осуществляется как часть этого перехода. В отличие от деятельности входное действие рассматривается как непрерываемое. Входное действие также показывают внутри состояния, ему предшествует слово entry (вход). Выходное действие (exit action) подобно входному, но оноосуществляется как составная часть процесса выхода из данного состояния. Как и входное, выходное действие является непрерываемым. Выходное действие изображают внутри состояния, ему предшествует слово exit (выход). Переход (transition) – это перемещение объекта из одного состояния в другое. На диаграмме переходы изображают в виде стрелки, начинающейся на первоначальном состоянии и заканчивающейся на последующем. Переходы могут быть рефлексивными, когда объект переходит в то же состояние, в котором он находится в настоящий момент. Рефлексивные переходы изображают в виде стрелки, начинающейся и завершающейся на одном и том же состоянии. У перехода существует несколько спецификаций, основными из которых являются события, ограничивающие условия и действия. Событие (event) вызывает переход из одного состояния в другое. Событие размещают на диаграмме вдоль линии перехода. Для отображения события можно использовать как имя операции, так и обычную фразу. Большинство переходов имеют события, однако бывают автоматические переходы, не имеющие событий. При этом объект сам перемещается из одного состояния в другое со скоростью, позволяющей осуществиться входным действиям, деятельности и выходным действиям. Ограничивающие условия (guard conditions) определяют, когдапереход может, а когда не может осуществиться. Ограничивающие условия изображают на диаграмме вдоль линии перехода после имени события, заключая их в квадратные скобки. Ограничивающие условия задавать необязательно. Однако если существует несколько автоматических переходов из состояния, необходимо определить для них взаимно исключающие ограничивающие условия. Действие может быть не только входным или выходным, но и частью перехода. Действие изображают после имени события, ему предшествует косая черта. Диаграммы состояний не следует создавать для каждого класса, они применяются только в сложных случаях. Если объект класса может существовать в нескольких состояниях и в каждом из них ведет себя по-разному, для него может потребоваться такая диаграмма.
|