Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Uml Book (Rus).doc
Скачиваний:
15
Добавлен:
11.08.2019
Размер:
58.74 Mб
Скачать

Часть VI. Архитектурное моделирование Глава 25. Компоненты

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

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

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

Введение

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

И логический, и физический вид системы в равной мере необходимы для разра­ботчика. При постройке времянки (например, конуры - см. главу 1), расходы на переделку которой невелики, вы, скорее всего, сразу приступите к строительству обойдясь без логического моделирования. С другой стороны, если возводится сооружение, рассчитанное на длительный срок эксплуатации, причем стоимость и изменений или неудачного завершения проекта достаточно высока, создание как логической, так и физической модели окупится сторицей и позволит избежать неоправданного риска.

Точно так же обстоит дело при создании программных систем. Логическое моделирование выполняется с целью визуализации, специфицирования и документирования решений по поводу словаря предметной области и взаимодействия различных сущностей (со структурной и поведенческой точек зрения). физическое моделирование служит для построения исполняемой системы. В то время как логические сущности присутствуют лишь в концептуальном мире, физические существуют в мире битов, то есть в конечном счете размещаются в физических узлах и могут либо исполняться непосредственно, либо косвенно участвовать в ра­боте системы.

В UML все физические сущности моделируются в виде компонентов. Компо­нент (Component) - это физическая сущность, реализующая некоторый набор интерфейсов (см. главу 11). Таким образом, интерфейсы образуют мост между логическими и физическими моделями. Например, в логической модели можно специфицировать интерфейс некоторого класса, который затем будет реализован каким-либо компонентом в физической модели.

Многие операционные системы и языки программирования непосредственно поддерживают понятие компонента. Объектные библиотеки, исполняемые про­граммы, компоненты СОМ+, Enterprise JavaBeans - все это примеры сущностей, которые могут быть непосредственно представлены компонентами в смысле UML. Компоненты могут использоваться не только для моделирования такого рода сущ­ностей, но и для представления иных элементов работающей системы - к приме­ру, таблиц, файлов и документов.

Графически компонент в UML изображается так, как показано на рис. 25.1. Это каноническое обозначение позволяет визуализировать компо­нент без привязки к конкретной операционной системе или языку программирования. С помо­щью стереотипов (см. главу 6) - одного из меха­низмов расширения UML - вы можете приспосо­бить эту нотацию для представления конкретных видов компонентов.

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