UML - Интерфейси и реализации

Съдържание
Понякога се случва, че когато правим диаграми на разширени системи, осъзнаваме, че някои класове не принадлежат към основния клас, но може да се нуждаем от някои операции на споменатия основен клас, което ни оставя отворени няколко опции.
Една от тези опции е a Интерфейс, тази концепция ни позволява да посочим операции в клас и как да ги представим на другите.
Интерфейс
The Интерфейс ни позволява да посочим набор от операции в клас, които могат да се използват от други, той е представен по същия начин като клас, използващ правоъгълник, но той се различава от клас по това, че няма да има атрибути, защото ще бъде само набор от операции.
За да се разграничи a Интерфейс на а клас със скритите му атрибути трябва да използваме думата интерфейс като стереотип или просто да поставим a Аз пред името на този интерфейс.
Нека видим следния пример за това как да внедрим интерфейс в нашата диаграма:

В този случай вземаме клавиатурата като пример, ако погледнем клавиатурата на компютъра и клавиатурата на пишеща машина, те са много сходни, тогава можем да заключим, че можем да направим интерфейс, където да включим операцията клавиатура (), в който при натискане на клавиш той трябва да върне отговор под формата на писмо, било то на хартия в случай на пишещата машина или на екрана на нашия компютър; тогава виждаме, че в клавиатурния клас имаме няколко допълнителни операции, които съответстват на разликите между клавиатурата на компютъра и пишещата машина.
Както виждаме, внедряването на интерфейс не е толкова сложно.
Имаме и пропусната форма за може да изобразява интерфейса Вътре в класа можем да видим тази форма на следното изображение:

Видимост
The видимост съответства на начина, по който показваме операциите и атрибутите на клас, има определени процеси, които не трябва да се показват на други класове, затова решихме да ги направим частни, това отговаря на едно от условията за ориентация на обекта, което е капсулиране.
Имаме 3 нива на видимост, които са следните:
  • Обществен: това може да се види от всеки друг клас и за да го уточним, ние го демаркираме със знак +.
  • Защитено: това може да се види само от първоначалния клас и всички, които наследяват от него, ние го маркираме с #.
  • Частни: Само оригиналният клас може да види това и той е демаркиран с -.
Така стигаме до концепцията за реализация, където ние уточняваме, че интерфейсите трябва да публикуват своите операции публично, в противен случай тази цифра няма да има смисъл, тъй като другите класове няма да могат да видят съответните операции.
Нека да видим следния пример за това как да определим видимостта на операциите и атрибутите на клас:

Както виждаме на изображението, телевизията има частна операция colorPictureOnScreen (), ние заключаваме, че само тази операция е важна за този клас и че друг клас не би трябвало да има достъп до споменатата операция.Хареса ли ви и помогнахте на този урок?Можете да възнаградите автора, като натиснете този бутон, за да му дадете положителна точка

Така ще помогнете за развитието на сайта, сподели с приятелите си

wave wave wave wave wave