Составные структуры

Одной из наиболее значимых новых черт языка UML 2 является воз­можность превращать класс в иерархию внутренних структур. Это по­зволяет разбить сложный объект на составляющие.

На рис. 13.1 показан класс TV Viewer (Телевизор) вместе с интерфейса­ми, которые он предоставляет и которые требует (стр. 96). Я показал его двумя способами: с помощью шарово-гнездовой нотации и с помо­щью перечисления внутри объекта.

На рис. 13.2 показан этот же класс, разбитый внутри на две части, ко­торые предоставляют и требуют различные интерфейсы. Каждая часть имеет имя в виде имя: класс, в котором каждый из составляющих его элементов может отсутствовать. Составляющие части не являются описанием экземпляров, поэтому они выделены жирным шрифтом, а не подчеркнуты.

Можно также указать количество экземпляров конкретной части. На рис. 13.2 показано, что каждый объект TV Viewer содержит один гене­ратор (Gene rato г) и один блок управления (cont rols).


Чтобы обозначить часть, реализующую интерфейс, надо нарисовать разъем, предоставляемый этим интерфейсом. Аналогично, чтобы пока­зать часть, нуждающуюся в интерфейсе, надо нарисовать разъем, пре­доставляемый этому интерфейсу. Кроме того, разъемы между частями можно показать или с помощью простой линии, как сделано в данном случае, или с помощью шарово-гнездовой нотации (стр. 98).

К внешней структуре можно добавить порты (рис. 13.3). Порты позво­ляют группировать требуемые и предоставляемые интерфейсы в логи-


ческие взаимодействия, которые компонент имеет с объектами внеш­него мира.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: