Открытая коллекция знаний

OpenU.Ru

Справочник UML. Объектно-ориентированное проектирование.

parameter (параметр)

Определение переменной, которую можно изменять, передавать и возвращать. Параметр может включать в себя имя, тип и направление. Используется для операции, сообщений, событий и шаблонов.
См. для сравнения argument.
Зависимость использования параметра связывает операцию, в которой используется параметр, или класс, в котором содержится такая операция, с классом данного параметра.
См. argument; binding.

Семантика

Параметр представляет собой место для аргумента, который связывается с ним при использовании родительского для данного параметра внешнего элемента. Параметр ограничивает значения, которые может принимать аргумент. У параметра есть следующие составляющие:
значение по умолчанию (defaull value)
Выражение, описывающее значение, которое используется в том случае, если у параметра нет аргумента. Вычисляется это выражение тогда, когда аргументы привязываются к списку параметров.
направление (direction)
Направление потока информации для параметра. Перечисление, у которого могут быть следующие значения:
in
Входной параметр, передаваемый по значению. Источник вылова не имеет доступа к изменениям в параметре.
out
Выходной параметр. Входное значение отсутствует. Источник вызова имеет доступ к конечному значению.
inout
Входной параметр, который можно изменять. Источник вызова имеет доступ к коночному значению.
return
Возвращаемое значение вызова, к которому имеет доступ источник вызова. С семантической точки зрения не отличается от выходного параметра, однако, результат в данном случае можно использовать но встроенном (inline) выражении.
Не все языки программирования поддерживают все вышеперечисленные варианты. Однако концепции, которые лежат в их основе, есть, во всех языках - хоть и реализуются по-разному.
имя (name)
Имя параметра, уникальное в своем списке параметров.
тип (type)
Ссылка на классификатор (класс, тип данных или интерфейс в большинстве процедур). Связанный с параметром аргумент должен быть экземляром этого классификатора или его потомка.

Нотация

Параметр изображается в виде строки текста, которую можно разделить на составляющие (различные свойства параметра). По умолчанию используется синтаксис:

направление имя : тип = значение-по-умолчанию

Направление. Направление обозначается при помощи ключевого слова, которое ставится перед именем операции. Если ключевое слово отсутствует, значит, это направление in (входное). Возможны и другие варианты - out (выходное), inout (исходное-выходное) или return (возвращаемое). Возвращаемые параметры, как правило, укладываются в другом месте сигнатуры операции, где их направление не нужно помечать.
Имя. Имя записывается в виде строки.
Тип. Тип изображается в виде строки, которая представляет собой имя класса, интерфейса или тип данных.
Значение по умолчанию. Значение изображается в виде выражения. Язык этого выражения должен быть известен инструменту моделирования, однако при этом в общепринятом формате его не указывают.
Область действия. Если область действия представляет собой класс, то строка операции должна быть подчеркнута. Если область действия - экземпляр, то она не подчеркивается.
Зависимость параметра. Зависимость параметра изображается в виде пунктирной стрелки, идущей от операции, которой принадлежи! параметр, или класса, в котором содержится операция, к классу параметра. К стрелке крепится стереотип "parameter".

Пример

Matrix: :transform ( in distance: Vector, in angle: Real = 0): return Matrix

В данном случае могут быть опущены все метки направлений.

Алфавитный указатель