Различия компонентов и классов



Описание
1   Классы – логические абстракции, компоненты – физические предметы, которые живут в мире битов. В частности, компоненты могут «жить» в физических узлах, а классы лишены такой возможности.
2   Компоненты являются физическими упаковками, контейнерами, инкапсулирующими в себе различные логические элементы. Они – элементы абстракций другого уровня.
3   Классы имеют свойства и операции. Компоненты имеют только операции, которые доступны через их интерфейсы.

О чем говорят эти различия? Во-первых, класс не может «дышать» воздухом фи­зического мира реализации. Ему нужен скафандр. Таким скафандром является ком­понент.

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

В-третьих, класс – душа нараспашку (он может даже показать свои свойства). Компонент всегда застегнут на все пуговицы (правда, из него торчат интерфейс­ные разъемы операций).

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

· экспортируемый интерфейс – тот, который компонент реализует и предлагает как услугу клиентам;

· импортируемый интерфейс – тот, который компонент использует как услугу другого компонента.

У одного компонента может быть несколько экспортируемых и несколько импор­тируемых интерфейсов.

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

Моделирование реализации системы

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

Диаграмма размещения (развертывания) – вторая из двух разновидностей диа­грамм реализации UML, моделирующих физические аспекты объектно-ориен­тированных систем.

Диаграмма размещения показывает конфигурацию обрабатывающих узлов в период работы системы, а также компоненты, «живущие» в них.

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

 

Узел – это физический элемент, который существует в период работы системы и пред­ставляет компьютерный ресурс, имеющий память, а возможно, и способность об­работки. Графически узел изображается как куб с именем


Дата добавления: 2018-02-15; просмотров: 917; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!