Tutorial diagramă de clasă UML cu exemple

Cuprins:

Anonim

Ce este Class?

O clasă este un plan care este utilizat pentru a crea obiectul. Clasa definește ce poate face obiectul.

Ce este diagrama de clasă?

UML CLASS DIAGRAM oferă o prezentare generală a unui sistem software prin afișarea claselor, atributelor, operațiilor și relațiilor acestora. Această diagramă include numele clasei, atributele și operația în compartimente desemnate separate.

Diagrama clasei definește tipurile de obiecte din sistem și diferitele tipuri de relații care există între ele. Oferă o vizualizare la nivel înalt a unei aplicații. Această metodă de modelare poate rula cu aproape toate metodele orientate pe obiecte. O clasă se poate referi la o altă clasă. O clasă poate avea obiectele sale sau poate moșteni de la alte clase.

Diagrama clasei ajută la construirea codului pentru dezvoltarea aplicațiilor software.

În acest tutorial, veți învăța:

  • Ce este Class?
  • Ce este diagrama de clasă?
  • Avantajele diagramei de clasă
  • Elemente esențiale ale unei diagrame de clasă UML
    • Numele clasei
    • Atribute:
    • Relații
  • Agregare vs. Compoziție
  • Cursuri abstracte
  • Exemplu de diagramă de clasă UML:
  • Diagrama clasei în ciclul de viață al dezvoltării software-ului:
  • Cele mai bune practici de proiectare a diagramei de clasă

Avantajele diagramei de clasă

  • Diagrama clasei ilustrează modele de date chiar și pentru sistemele de informații foarte complexe
  • Acesta oferă o prezentare generală a modului în care este structurată aplicația înainte de a studia codul real. Acest lucru poate reduce cu ușurință timpul de întreținere
  • Ajută la o mai bună înțelegere a schemelor generale ale unei aplicații.
  • Permite desenarea unor diagrame detaliate care evidențiază codul necesar programării
  • Util pentru dezvoltatori și alte părți interesate.

Elemente esențiale ale unei diagrame de clasă UML

Elementele esențiale ale diagramei clasei UML sunt:

  1. Numele clasei
  2. Atribute
  3. Operațiuni

Numele clasei

Numele clasei este necesar doar în reprezentarea grafică a clasei. Apare în compartimentul de sus. O clasă este planul unui obiect care poate împărtăși aceleași relații, atribute, operații și semantică. Clasa este redată ca un dreptunghi, inclusiv numele, atributele și operațiile sale în compartimente sperate.

Următoarele reguli trebuie luate în considerare în timp ce reprezintă o clasă:

  1. Un nume de clasă ar trebui să înceapă întotdeauna cu o literă mare.
  2. Un nume de clasă trebuie să fie întotdeauna în centrul primului compartiment.
  3. Un nume de clasă trebuie întotdeauna scris în format aldin .
  4. Un nume de clasă abstractă trebuie scris în cursiv.

Atribute:

Un atribut este denumit proprietate a unei clase care descrie obiectul modelat. În diagrama clasei, această componentă este plasată chiar sub compartimentul pentru nume.

Un atribut derivat este calculat din alte atribute. De exemplu, o vârstă a studentului poate fi calculată cu ușurință de la data nașterii sale.

Caracteristicile atributelor

  • Atributele sunt în general scrise împreună cu factorul de vizibilitate.
  • Public, privat, protejat și pachet sunt cele patru vizibilități care sunt notate cu semnele +, -, # sau, respectiv.
  • Vizibilitatea descrie accesibilitatea unui atribut al unei clase.
  • Atributele trebuie să aibă un nume semnificativ care să descrie utilizarea acestuia într-o clasă.

Relații

Există în principal trei tipuri de relații în UML:

  1. Dependențe
  2. Generalizări
  3. Asociațiile

Dependenţă

O dependență înseamnă relația dintre două sau mai multe clase în care o schimbare în una poate forța schimbări în cealaltă. Cu toate acestea, va crea întotdeauna o relație mai slabă. Dependența indică faptul că o clasă depinde de alta.

În exemplul următor, Studentul depinde de facultate

Generalizare:

O generalizare ajută la conectarea unei subclase la superclasa sa. O subclasă este moștenită din superclasa sa. Relația de generalizare nu poate fi utilizată pentru modelarea implementării interfeței. Diagrama de clasă permite moștenirea de la mai multe superclase.

În acest exemplu, clasa Student este generalizată din Clasa persoană.

Asociere:

Acest tip de relație reprezintă relații statice între clasele A și B. De exemplu; un angajat lucrează pentru o organizație.

Iată câteva reguli pentru asociere:

  • Asocierea este în mare parte verb sau o frază verbală sau substantiv sau sintagmă nominală.
  • Ar trebui numit pentru a indica rolul jucat de clasa atașată la sfârșitul căii de asociere.
  • Obligatoriu pentru asociațiile reflexive

În acest exemplu, se arată relația dintre student și facultate care este studiile.

Multiplicitate

O multiplicitate este un factor asociat cu un atribut. Specifică câte instanțe de atribute sunt create când se inițializează o clasă. Dacă nu este specificată o multiplicitate, implicit una este considerată ca o multiplicitate implicită.

Să spunem că există 100 de studenți într-un singur colegiu. Colegiul poate avea mai mulți studenți.

Agregare

Agregarea este un tip special de asociere care modelează o relație între părți între agregat și părțile sale.

De exemplu, colegiul de clasă este format din unul sau mai mulți elevi. În agregare, clasele conținute nu sunt niciodată total dependente de ciclul de viață al containerului. Aici, ora colegiului va rămâne chiar dacă studentul nu este disponibil.

Compoziţie:

Compoziția este un tip special de agregare care denotă o proprietate puternică între două clase atunci când o clasă face parte dintr-o altă clasă.

De exemplu, dacă facultatea este compusă din cursuri de elev. Colegiul ar putea conține mulți studenți, în timp ce fiecare student aparține unui singur colegiu. Deci, dacă facultatea nu funcționează, toți elevii au fost eliminați.

Agregare vs. Compoziție

Agregare

Compoziţie

Agregarea indică o relație în care copilul poate exista separat de clasa părintească. Exemplu: Automobil (părinte) și Mașină (copil). Deci, dacă ștergeți automobilul, mașina copilă există în continuare.

Compoziție afișează relația în care copilul nu va exista niciodată independent de părinte. Exemplu: Casă (părinte) și Cameră (copil). Camerele nu se vor separa niciodată într-o casă.

Cursuri abstracte

Este o clasă cu un prototip de operație, dar nu și implementarea. De asemenea, este posibil să aveți o clasă abstractă fără operațiuni declarate în interiorul ei. Un rezumat este util pentru identificarea funcționalităților din toate clasele. Să luăm în considerare un exemplu de clasă abstractă. Să presupunem că avem o clasă abstractă numită ca mișcare cu o metodă sau o operație declarată în interiorul ei. Metoda declarată în clasa abstractă se numește mutare () .

Această metodă de clasă abstractă poate fi utilizată de orice obiect, cum ar fi o mașină, un animal, robot etc. pentru schimbarea poziției actuale. Este eficient să utilizați această metodă de clasă abstractă cu un obiect, deoarece nu este prevăzută nicio implementare pentru funcția dată. Îl putem folosi în orice mod pentru mai multe obiecte.

În UML, clasa abstractă are aceeași notație ca cea a clasei. Singura diferență între o clasă și o clasă abstractă este că numele clasei este strict scris într-un font italic.

O clasă abstractă nu poate fi inițializată sau instanțiată.

Nota de clasă abstractă

În notația abstractă de clasă de mai sus, există singura metodă abstractă unică care poate fi utilizată de mai multe obiecte de clase.

Exemplu de diagramă de clasă UML

Crearea unei diagrame de clasă este un proces simplu. Nu implică multe tehnicități. Iată un exemplu:

Sistemul de bancomate este foarte simplu, deoarece clienții trebuie să apese câteva butoane pentru a primi numerar. Cu toate acestea, există mai multe straturi de securitate pe care orice sistem ATM trebuie să le treacă. Acest lucru ajută la prevenirea fraudei și la furnizarea de numerar sau pentru a avea nevoie de detalii clienților bancari.

Mai jos este prezentat un exemplu de diagramă de clasă UML:

Diagrama clasei în ciclul de viață al dezvoltării software-ului

Diagramele de clasă pot fi utilizate în diferite faze de dezvoltare software. Ajută la modelarea diagramelor de clasă în trei perspective diferite.

1. Perspectivă conceptuală: Diagramele conceptuale descriu lucrurile din lumea reală. Ar trebui să desenați o diagramă care să reprezinte conceptele din domeniul în studiu. Aceste concepte sunt legate de clasă și sunt întotdeauna independente de limbă.

2. Perspectiva specificațiilor: Perspectiva specificațiilor descrie abstracții software sau componente cu specificații și interfețe. Cu toate acestea, nu oferă niciun angajament pentru implementarea specifică.

3. Perspectiva implementării: acest tip de diagrame de clasă este utilizat pentru implementări într-un anumit limbaj sau aplicație. Perspectiva implementării, utilizarea pentru implementarea software-ului.

Cele mai bune practici de proiectare a diagramei de clasă

Diagramele de clasă sunt cele mai importante diagrame UML utilizate pentru dezvoltarea aplicațiilor software. Există multe proprietăți care ar trebui luate în considerare în timpul desenării unei diagrame de clasă. Ele reprezintă diferite aspecte ale unei aplicații software.

Iată câteva puncte care ar trebui reținute în timp ce trageți o diagramă de clasă:

  • Numele dat schemei de clasă trebuie să fie semnificativ. Mai mult, ar trebui să descrie aspectul real al sistemului.
  • Relația dintre fiecare element trebuie identificată în prealabil.
  • Responsabilitatea pentru fiecare clasă trebuie identificată.
  • Pentru fiecare clasă, trebuie specificat numărul minim de proprietăți. Prin urmare, proprietățile nedorite pot complica cu ușurință diagrama.
  • Note de utilizator ar trebui să fie incluse ori de câte ori trebuie să definiți un aspect al diagramei. La sfârșitul desenului, acesta trebuie să fie de înțeles pentru echipa de dezvoltare software.
  • În cele din urmă, înainte de a crea versiunea finală, diagrama trebuie desenată pe hârtie simplă. Mai mult, ar trebui să fie refăcut până când este gata pentru depunerea finală.

Concluzie

  • UML este limbajul standard pentru specificarea, proiectarea și vizualizarea artefactelor sistemelor software
  • O clasă este un plan pentru un obiect
  • O diagramă de clasă descrie tipurile de obiecte din sistem și diferitele tipuri de relații care există între ele
  • Permite analiza și proiectarea vizualizării statice a unei aplicații software
  • Diagramele de clasă sunt cele mai importante diagrame UML utilizate pentru dezvoltarea aplicațiilor software
  • Elementele esențiale ale diagramei de clasă UML sunt 1) Clasa 2) Atribute 3) Relații
  • Diagrama clasei oferă o prezentare generală a modului în care este structurată aplicația înainte de a studia codul real. Cu siguranță reduce timpul de întreținere
  • Diagrama clasei este utilă pentru cartografierea limbajelor de programare orientate pe obiecte precum Java, C ++, Ruby, Python etc.