Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Операция

МЕТОДОЛОГИИ СТРУКТУРНОГО СИСТЕМНОГО АНАЛИЗА И ПРОЕКТИРОВАНИЯ | Методологии структурного анализа Йодана/Де Марко и Гейна-Сарсона | SADT - технология структурного анализа и проектирования | Существующие методологии | Стадии разработки ПО, регламентированных ГОСТами. | Технологии программирования | Объектно - ориентированная технология разработки программ | Начальные сведения о языке Си | Унифицированный язык моделирования | Такой подход имеет ряд недостатков. |


Читайте также:
  1. Аварии с алмазными долотами — заклинивание долот при спускоподъемных операциях и бурении, отвинчивание долот.
  2. Банковская операция, посредством которой по поручению клиента
  3. Год, Гватемала (операция ЦРУ PBSUCCESS)
  4. Какая операция оказывает наибольшее влияние на производительность экскаватора
  5. Керченско-Эльтигенская десантная операция (конец 1943 года). Тарханский десант.
  6. Кооперация и разделение труда в организации.
  7. Микроэндоскопическая хирургия носа и околоносовых пазух. Виды операций и их преимущество перед макрооперациями.

Используется для отображения определенных на классе операций. А также для показа замещаемых классом методов.

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

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

Синтаксис по умолчанию:

visibility name (parameter-list): return-type-expression { property-string }
видимость имя
(список-параметров): выражение-возвращаемого-типа { строка-свойств }

где видимость принимает одно из следующих значений:

+ общедоступный (public)

# защищенный (protected)

- частный (private)

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

Видимость может быть также задана с помощью ключевых слов (public, protected, private). В особенности этот форма используется как встроенный элемент списка, который применяется ко всему блоку операций.

Для некоторых языков программирования могут потребоваться дополнительные виды видимости, как implementation видимость в C++ (фактически для всех форм не общей видимости, зависящей от языка). Такая видимость должна определяться строкой свойства или зависящем от ПО способом.

где имя - строка идентификатора;

где выражение-возвращаемого-типа зависящее от языка описание реализации типа или типов значений возвращаемых операцией. Если выражение не возвращает значения, то возвращаемый тип опускается (C++ void). Для указания множественности возвращаемых значений применяется список выражений.

где список-параметров - это разделенный запятыми список формальных параметров, для описания которых используется следующий синтаксис:

kind name: type-expression = default-value
вид имя: выражение-типа = значение-по-умолчанию

где вид - это in, out или inout, по умолчанию in;

где имя - название формального параметра;

где выражение-типа - зависящее от языка описание реализации типа;

где значение-по-умолчанию - необязательное выражение значения для параметра, выраженное и подчиненное ограничениям окончательного целевого языка;

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

Глобальные для класса операции отображаются с помощью подчеркивания имени и выражения типа. По умолчанию операции являются локальные для экземпляра и не маркируются.

Операция, которая не модифицирует состояние системы (не имеет побочных эффектов) описывается свойством {query}; иначе, операция может изменять состояние системы, однако нет гарантий, что это действительно происходит.

Семантика параллелизма операций определяется строкой свойств с одним из следующих имен: sequential, guarded, concurrent. В отсутствии описания семантика параллелизма неопределенна и в худшем случае должна быть назначена последовательная.

Самое верхнее появление сигнатуры операции объявляет операцию на классе (и, следовательно, наследуется всеми его наследниками). Если класс не реализует операцию (т.е. отсутствует метод), то операция либо маркируется как {abstract} либо сигнатура операции пишется курсивом, чтобы показать ее абстрактность. Любое последующее появление сигнатуры операции показывает, что подчиненный класс реализует метод операции. (Описание {abstract} или курсив в подчиненном классе не указали бы на метод, но такое использование нотации было бы плохим стилем.)

Собственно текст или алгоритм метода может быть показан в сноске, присоединенной к записи операции.

Запись операции со стереотипом {signal} показывает, что класс принимает определенный сигнал.

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

Ключевое слово стереотипа предшествует строке операции, включая индикаторы видимости. Список свойств в скобках следует за строкой операции.

Варианты представления

Список аргументов и возвращаемое значение могут быть опущены (одновременно).

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


Дата добавления: 2015-07-25; просмотров: 57 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Сущности UML| Рекомендации по оформлению

mybiblioteka.su - 2015-2024 год. (0.008 сек.)