Войти



Последние материалы

Серебряные партнеры:

Бронзовые партнеры:

Отношение часть-целое в объектно-ориентированных моделях
Статьи
Автор: Лукашевич Н.В.   
10.10.2011 18:13

Отношение часть-целое в объектно-ориентированных моделях

 

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

В 90-х годах в научных публикациях, посвященных объектно-ориен-тированным подходам в программировании, развернулась дискуссия о необходимости выделения отношений часть-целое из общего набора атрибутов, приписываемых классам (Motschnig-Pitrik, Kaasboll, 1999; Artale и др., 1996), в связи с особыми свойствами этого отношения.

Результаты этой дискуссии нашли свое воплощение, например, в языке для моделирования объектно-ориентированных систем UML (Леоненков, 2001). В этом языке среди всех отношений ассоциации выделяются отношения агрегации, которые служат для описания отношений между агрегатом (целое) и его составной частью. Дополнительно среди отношений агрегации выделяются отношения композиции, которые устанавливаются в тех случаях, когда части целого имеют тоеже время жизни, что и само целое. Эти части уничтожаются вместе с уничтожением целого.

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

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