Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

UML / АСУ_Фонотов_uml

.pdf
Скачиваний:
47
Добавлен:
03.03.2016
Размер:
3.35 Mб
Скачать

 

 

 

 

 

 

Интерфейсы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Интерфейс – это набор операций, используемых

 

 

управления

 

 

 

для специфицирования услуг, предоставляемых

 

 

 

классом или компонентом

 

 

 

 

систем

 

Интерфейс определяет границу между

 

 

 

спецификацией того, что делает абстракция, и

АвтоматизированныхКафедра

 

 

 

реализацией того, как она это делает [Г. Буч]

 

 

 

 

© Фонотов Анастас Михайлович

 

 

 

 

 

Интерфейсы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Смысл использования Интерфейса - отделение

управлениясистем

 

 

деталей реализации от функциональности.

 

 

Интерфейс описывает доступную извне

 

 

 

 

 

 

функциональность отделяя ее от реализации класса.

Кафедра Автоматизированных

Интерфейс не содержит атрибутов.

 

 

 

 

 

© Фонотов Анастас Михайлович

Интерфейсы и С++

 

С++ не содержит понятия Интерфейс, поэтому

управлениясистем

 

Интерфейсы моделируются посредством

использования классов.

 

 

АвтоматизированныхКафедра

 

В С++ Интерфейс содержит чисто виртуальные

 

методы.

 

 

© Фонотов Анастас Михайлович

Реализации (realization)

Кафедра Автоматизированных систем управления

Реализация – отношение между спецификацией и ее программной реализацией.

 

 

Контексное меню

БлокВыбора

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

СписокРадиоКнопок

© Фонотов Анастас Михайлович

Кафедра Автоматизированных систем управления

© Фонотов Анастас Михайлович

pkg realization

 

 

 

 

 

 

«interface»

 

 

 

 

iSearch

 

 

+

FindById(int) : void

 

 

BookManager

 

 

ProductManager0

+

FindById(int) : void

+

FindById(int) : void

 

Book

 

 

Product

 

 

 

 

-

Autor[]: char

 

-

ProductId: int

-

BookId: int

 

 

-

ProductName[]: char

-

Title[]: char

 

 

-

quantity: int

 

 

 

 

 

 

 

 

 

Реализации (realization)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Реализацией элемент должен поддерживать все

 

 

управления

 

 

 

операции, имеющиеся у реализуемого элемента.

 

Клиент берет на себя ответ за все операции

 

 

систем

 

 

 

поставщика. Он должен объявить их

 

 

 

самостоятельно унаследовать от своего предка.

Автоматизированных

 

 

 

большим поведением и реализовывать несколько

 

 

Элемент отвечающий за программную реализацию

 

 

 

 

должен поддерживать все поведение, который есть

Кафедра

 

 

 

у поставщика, но при этом он может обладать

 

 

 

интерфейсов.

 

 

 

 

 

 

 

 

 

© Фонотов Анастас Михайлович

Реализации (realization)

Связь связывает один элемент модели, чаще всего

управления

класс или компонент, с другим элементом

(интерфейс), который дает спецификацию своего

 

Кафедра Автоматизированных систем

поведения но не структуру и реализацию в

программном коде.

 

© Фонотов Анастас Михайлович

Интерфейс (interface)

Кафедра Автоматизированных систем управления

– вид класса, который представляет собой объявление множества общедоступных характеристик и обязанностей.

требуемый

предоставляемый

интерфейс

интерфейс

СигналТревоги

БесконтактныйДатчик

IДатчик

 

 

<<interface>>

 

 

 

 

СигналТревоги

 

IДатчик

 

БесконтактныйДатчик

 

 

 

 

 

включить()

 

 

 

 

прочитать()

 

 

 

 

© Фонотов Анастас Михайлович

Шаблон (template)

Кафедра Автоматизированных систем управления

Шаблон – сущность с параметрами

Шаблон – классификатор, который в своем описании имеет несколько формальных параметров

Параметром может выступать

Тип составляющей

Кратность атрибута

Параметры шаблона описываются в пунктирном прямоугольнике, который присоединяется к стандартному обозначению класса

Шаблон не указывается в модели

Связывание класса с шаблоном (binding) осуществляется явным указанием значений параметров

© Фонотов Анастас Михайлович

Шаблон (template)

Кафедра Автоматизированных систем управления

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

T:String

k:Integer=2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Список формальных

 

СвязныйСписок

 

 

 

 

 

 

 

 

 

 

 

параметров шаблона

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Имя шаблона

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

элемент: T[k]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Список атрибутов

 

 

 

 

 

 

 

 

 

шаблона

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Список операций

 

 

 

 

 

 

 

<<bind>>

 

шаблона

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

<T->Адрес, k->4>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

© Фонотов Анастас Михайлович

Соседние файлы в папке UML