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

OpenU.Ru

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



call (вызов)

Заполнение операции.
См. activation; call event; send.

Семантика

С помощью вызова осуществляется выполнение операции во время работы некоторой процедуры. При этом поток управления на время переходит от вызывающей процедуры к вызываемой. На время вызова выполнение вызывающей процедуры приостанавливается. Управление возвращается к вызывающей процедуре вместе с возвратом из операции.
Вызываемая операция получает от вызывающей список аргументов, а также скрытый указатель возврата к вызывающей процедуре. По возвращении процедура может вернуть список возвращаемых значений.
Часто вызов происходит в адресном пространстве вызывающей процедуры, однако это вовсе не следует из семантики вызова. Более того, в распределенных системах, где получатель вызова может быть физически отделен от отправляющего, это просто невозможно. Гораздо важнее создать скрытую возвращаемую связь, при использовании которой управление может вернуться к вызывающей процедуре с сохранением окружения и точки вызова. Точку вызова вызывающей процедуры можно моделировать в виде строки из текста процедуры или в виде состояния внутри конечного автомата. Окружение вызова можно моделировать в виде активации.
С помощью зависимости вызова моделируется ситуация, в которой операция класса-потребителя вызывает операцию класса-поставщика. Стереотипом такой зависимости является "call" (вызывать).

Нотация

На диаграмме последовательности или кооперации вызов изображается в виде текстового сообщения, направленного на целевой объект или класс.
Зависимость вызова обозначается с помощью пунктирной стрелки, идущей от вызывающего класса к вызываемому классу или операции и имеющей стереотип "call".
В языке программирования большинство вызовов представлены как часть текстовых процедур.

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