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

0

 

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

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

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

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

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

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

 

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

 

Источник: Фаулер М.UML. Основы, 3-е издание. – Пер. с англ. – СПб: Символ-Плюс, 2006. – 192 с.,ил.

По теме:

  • Комментарии