Отличия версий языка UML 1.0 и 1.1

Тип и класс реализации

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

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

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

Если некоторый класс реализации представляет один или несколько типов, то это может быть показано с помощью отношения реализации.

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


Для класса реализации может быть использована только однозначная статическая классификация, однако в случае типов классификация мо­жет быть множественной и динамической. (Я думаю, дело тут в том, что основные объектно-ориентированные языки поддерживают единичную статическую классификацию. Если в один прекрасный день вы будете пользоваться языком, который поддерживает множественную или ди­намическую классификацию, то это ограничение может быть снято.)


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



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