logo

UML асоциация срещу агрегиране срещу композиция

В UML диаграмите релациите се използват за свързване на няколко неща. Това е връзка между структурни, поведенчески или групиращи неща. Следват стандартните UML връзки, изброени по-долу:

  • Асоциация
  • Зависимост
  • Обобщение
  • Реализация

Асоциация

Връзката на асоцииране е структурна връзка, в която различни обекти са свързани в рамките на системата. Той показва двоична връзка между обектите, представляващи дейност. Той изобразява връзката между обекти, като учител, може да бъде свързан с множество учители.

как да деактивирате режима за програмисти в android

Тя е представена от линия между класовете, последвана от стрелка, която навигира посоката, и когато стрелката е от двете страни, това се нарича двупосочна асоциация. Можем да уточним множествеността на асоциацията, като добавим декорациите на линията, която ще означава асоциацията.

Пример:

1) Един учител има няколко ученици.

UML асоциация срещу агрегиране срещу композиция

2) Един ученик може да се свърже с много учители.

UML асоциация срещу агрегиране срещу композиция

Композицията и агрегацията са две подгрупи на асоцииране. И в двата случая обектът от един клас е собственост на обект от друг клас; единствената разлика е, че при композицията детето не съществува независимо от своя родител, докато при агрегацията детето не е зависимо от своя родител, т.е. самостоятелно. Агрегацията е специална форма на асоцииране, а композицията е специалната форма на агрегация.

string.format java
UML асоциация срещу агрегиране срещу композиция

Агрегиране

Агрегацията е подмножество на асоцииране, е колекция от различни неща. Това представлява има връзка. То е по-специфично от асоциация. Описва връзка част-цяло или част от. Това е двоична асоциация, т.е. включва само два класа. Това е вид връзка, в която детето е независимо от родителя си.

Например:

Тук разглеждаме автомобил и пример за колело. Една кола не може да се движи без колело. Но колелото може да се използва самостоятелно с велосипед, скутер, велосипед или всяко друго превозно средство. Обектът колело може да съществува без обекта кола, което се оказва връзка на агрегиране.

UML асоциация срещу агрегиране срещу композиция

Състав

Композицията е част от агрегацията и изобразява връзката цяло-част. Той изобразява зависимостта между композит (родител) и неговите части (деца), което означава, че ако композитът бъде изхвърлен, неговите части също ще бъдат изтрити. Съществува между подобни обекти.

форматиране на java низ

Както можете да видите от дадения по-долу пример, връзката на асоцииране на състава свързва класа Person с класа Brain, класа Heart и класа Legs. Ако човекът бъде унищожен, мозъкът, сърцето и краката също ще бъдат изхвърлени.

UML асоциация срещу агрегиране срещу композиция

Асоциация срещу агрегиране срещу състав

Асоциация Агрегиране Състав
Асоциативната връзка е представена със стрелка. Връзката на агрегиране е представена от права линия с празен ромб в единия край. Композиционната връзка е представена от права линия с черен диамант в единия край.
В UML може да съществува между два или повече класа. Това е част от асоциативната връзка. Това е част от връзката на агрегиране.
Той включва асоцииране 'един към един', 'един към много', 'много към едно' и 'много към много' между класовете. Проявява един вид слаба връзка. Проявява силен тип връзка.
Може да асоциира още един обект заедно. В връзката на агрегиране асоциираните обекти съществуват независимо в рамките на обхвата на системата. В композиционна връзка асоциираните обекти не могат да съществуват независимо в рамките на обхвата на системата.
При това обектите са свързани помежду си. При това свързаните обекти са независими един от друг. Тук свързаните обекти са зависими един от друг.
Това може или не може да засегне другия свързан елемент, ако един елемент бъде изтрит. Изтриването на един елемент в връзката на агрегиране не засяга други свързани елементи. Това засяга другия елемент, ако един от свързаните с него елементи бъде изтрит.
Пример: Преподавател може да се асоциира с множество ученици или един ученик може да се асоциира с множество учители. Пример: Колата се нуждае от колело за правилното си функциониране, но може да не изисква същото колело. Може да работи и с друго колело. Пример: Ако файл е поставен в папка и тази папка е изтрита. Файлът, намиращ се в тази папка, също ще бъде изтрит по време на изтриването на папката.