UML диаграма на класовете: Abstract Клас с примери

⚡ Умно обобщение

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

  • 🧩 Основни елементи: Всеки клас показва три отделения – име, атрибути и операции – вътре в правоъгълник.
  • 🔤 Видимост: Публичният, частният, защитеният и достъпът до пакети са маркирани със символи +, -, # и ~.
  • 🔗 Връзки: Зависимостта, обобщението и асоциацията – плюс агрегацията и композицията – свързват класовете заедно.
  • 🧱 Коремни мускулиtract Класове: Коремни мускулиtracКласът t декларира операции без имплементация и името му е изписано в курсив.
  • 🏦 Разработен пример: Многослоен ATM модел демонстрира как класовете и връзките се комбинират в една диаграма.

Какво е клас в UML диаграма?

A Клас в UML диаграмата е план, използван за създаване на обект или набор от обекти. Класът определя какво може да прави един обект. Това е шаблон за създаване на различни обекти и внедряване на тяхното поведение в системата. Класът в UML е представен от правоъгълник, който включва редове с имена на класове, атрибути и операции.

Какво е класова диаграма?

A Диаграма на класа в софтуерното инженерство е статична структура, която дава преглед на софтуерна система чрез показване на класове, атрибути, операции и техните взаимоотношения помежду си. Тази диаграма включва името на класа, атрибутите и операцията в отделни определени отделения. Диаграмата на класа помага да се конструира кодът за разработка на софтуерно приложение.

Диаграмата на класа дефинира типовете обекти в системата и различните типове връзки, които съществуват между тях. Той дава изглед на високо ниво на приложение. Този метод за моделиране може да работи с почти всички обектно-ориентирани методи. Един клас може да препраща към друг клас. Един клас може да има свои обекти или може да наследи от други класове.

Предимства на диаграмата на класа

  • Диаграма на класове Илюстрира модели на данни дори за много сложни информационни системи
  • Той предоставя общ преглед на това как е структурирано приложението, преди да проучи действителния код. Това може лесно да намали времето за поддръжка
  • Помага за по-добро разбиране на общите схеми на приложението.
  • Позволява изчертаване на подробни диаграми, които подчертават кода, необходим за програмиране
  • Полезно за разработчици и други заинтересовани страни.

Основни елементи на UML диаграма на класове

Основните елементи на UML класовата диаграма са:

  1. Име на класа
  2. Атрибути
  3. Operaции

Име на класа

Име на клас в UML

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

Трябва да се спазват следните правила, докато се представя клас:

  1. Името на клас трябва винаги да започва с главна буква.
  2. Името на клас трябва винаги да е в центъра на първото отделение.
  3. Винаги трябва да се записва име на клас удебелен шрифт формат.
  4. UML абс.tracИмето на класа t трябва да бъде написано в курсив.

Атрибути

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

Атрибути в UML

Производен атрибут се изчислява от други атрибути. Например, възрастта на ученика може лесно да бъде изчислена от неговата/нейната дата на раждане.

Атрибути в UML

Характеристики на атрибути

  • Атрибутите обикновено се записват заедно с фактора за видимост.
  • Публичен, частен, защитен и пакет са четирите видимости, които се обозначават съответно със знаци +, -, # или ~.
  • Видимостта описва достъпността на атрибут на клас.
  • Атрибутите трябва да имат смислено име, което описва употребата им в даден клас.

Взаимоотношения

Има основно три вида релации в UML:

  1. Зависимостите
  2. Обобщения
  3. Асоциации

Зависимост

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

В следните примери на UML диаграма на клас, Student има зависимост от College

Релации в UML

Обобщение:

Релации в UML

Обобщението помага да се свърже подклас с неговия суперклас. Подкласът се наследява от своя суперклас. Връзката на обобщение не може да се използва за моделиране на изпълнението на интерфейса. Диаграмата на класа позволява наследяване от множество суперкласове.

В този пример класът Student е обобщен от Person Class.

асоциация:

Този вид връзка представлява статични връзки между класове A и B. Например; служител работи за организация.

Ето някои правила за асоцииране:

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

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

Релации в UML

многочисленост

Релации в UML

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

Да кажем, че има 100 студенти в един колеж. Колежът може да има няколко студенти.

Агрегация

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

Релации в UML

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

Състав:

Релации в UML

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

Например, ако колежът се състои от класове студент. Колежът може да включва много студенти, докато всеки студент принадлежи само към един колеж. Така че, ако колежът не функционира, всички студенти също са премахнати.

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

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

Коремни мускулиtract Класове

Това е клас с прототип на операция, но не и с имплементация. Възможно е също така да има ABStract клас без декларирани операции вътре в него. Абстрактен класtract е полезен за идентифициране на функционалностите в различните класове. Нека разгледаме пример за ABStract клас. Да предположим, че имаме коремни мускулиtract клас, извикан като motion с метод или операция, декларирани вътре в него. Методът, деклариран вътре в abstract клас се нарича a ход ().

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

В UML, коремните мускулиtracКласът t има същото обозначение като това на класа. Единствената разлика между клас и абстрактен обект еtract класът е, че името на класа е строго написано с курсив.

Коремни мускулиtracКласът t не може да бъде инициализиран или инстанциран.

Коремни мускулиtract-класова нотация
Коремни мускулиtract-класова нотация

В горното коремни мускулиtracнотация на t-клас, има единственият коремtract метод, който може да се използва от множество обекти на класове.

Пример за диаграма на UML клас

Създаването на класова диаграма е лесен процес. Не включва много технически подробности. Ето един пример:

Системата на банкоматите е много проста, тъй като клиентите трябва да натиснат няколко бутона, за да получат пари в брой. Има обаче множество нива на сигурност, които всяка ATM система трябва да премине. Това помага за предотвратяване на измами и предоставя пари в брой или подробности за нуждата на клиентите на банката.

По-долу е даден пример за UML диаграма на клас:

Пример за UML диаграма на клас

Пример за UML диаграма на клас

Също така проверете: - UML диаграми: история, типове, характеристики, версии, инструменти

Диаграма на класове в жизнения цикъл на разработка на софтуер

Диаграмите на класове могат да се използват в различни фази на разработка на софтуер. Помага при моделирането на диаграми на класове в три различни гледни точки.

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

2. Перспектива на спецификацията: Перспективата на спецификацията описва софтуерните абстрактиtracции или компоненти със спецификации и интерфейси. Това обаче не дава никакъв ангажимент за конкретна имплементация.

3. Перспектива за изпълнение: Този тип диаграми на класове се използват за имплементации на конкретен език или приложение. Перспектива на внедряване, използване за внедряване на софтуер.

Най-добри практики за проектиране на диаграма на клас

Диаграмите на класове са най-важните UML диаграми, използвани за разработване на софтуерни приложения. Има много свойства, които трябва да се вземат предвид при изчертаване на диаграма на клас. Те представляват различни аспекти на софтуерно приложение.

Ето някои точки, които трябва да имате предвид, докато чертаете диаграма на класове:

  • Името, дадено на класовата диаграма, трябва да е смислено. Освен това, той трябва да описва реалния аспект на системата.
  • Връзката между всеки елемент трябва да бъде идентифицирана предварително.
  • Трябва да се определи отговорността за всеки клас.
  • За всеки клас трябва да се посочи минимален брой свойства. Следователно нежеланите свойства могат лесно да направят диаграмата сложна.
  • Потребителските бележки трябва да бъдат включени винаги, когато трябва да дефинирате някои аспекти на диаграмата. В края на чертежа той трябва да е разбираем за екипа за разработка на софтуер.
  • И накрая, преди да създадете окончателния вариант, диаграмата трябва да бъде начертана на обикновена хартия. Освен това, той трябва да бъде преработен, докато стане готов за окончателно изпращане.

Също така проверете: - Урок за UML диаграма за начинаещи: Научете UML онлайн БЕЗПЛАТНО

Въпроси и Отговори

Диаграмата на класовете показва плана – класове, атрибути, операции и взаимоотношения – които се отнасят за всеки екземпляр. Диаграмата на обектите показва моментна снимка на конкретни екземпляри с реални стойности в даден момент. Диаграмите на класовете моделират структурата; диаграмите на обектите показват примери.

Можете да чертаете UML диаграми на класове със специални инструменти за моделиране, които предоставят форми на класове, конектори за връзки и етикети за множественост. Много от тях поддържат генериране на код от диаграми и обратно инженерство от изходния код, съхранявайки...ping дизайнът и кодовата база са в синхрон.

Коремни мускулиtract класът може да декларира както implemented, така и abstract методи и задържа състояние, а името му се появява в курсив. Интерфейсът декларира само операции без имплементация. Класът разширява един абс.tract клас, но може да реализира много интерфейси.

Да. ReverseИнструментите за инженерство и изкуствен интелект сканират изходния код, за да открият класове, атрибути, методи и взаимовръзки, след което автоматично създават чернова на диаграма на класовете. Revвидите резултата, защото изкуственият интелект може да разчете погрешно динамичните типове или сложното наследяване.

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

Обобщете тази публикация с: