27
Unified Modeling Language CLASS ДИЈАГРАМИ  Државе н Ун вер !"е " #Г $%е Де&' ев( в$ )"* +а,-&"е" !а Ин.$р/а",а 0$."вер1, *р$%е1 2 а-3"$р1, веж4 М2р5 6&а",$ Ј$ван$в1, 3*&5 нж5

UML_ClassDijagrami_Cas4_ (7)

Embed Size (px)

Citation preview

Page 1: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 1/27

Page 2: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 2/27

Класи Класа (class) = колекција, множество од објекти со заедничка:

- структура,- однесување, - врски, - семантика

на пример Licn!"#

Објект $ поединечна инстанца од некоја класа, на пример %&"',(i")&

*е+инирање на класа:

  $ ме  $ пис .коментар/

$ 0трибути $ структура со која се одредени особините наобјектот$ 1етоди - процеси2опслужувања кои класата .објектот/ можеда 3и извр4и, со кои се одредува однесувањето на објектот

567!! Licn!" 8  9)i7"& !")in; <&>

  9)i7"& !")in; %)&?i&>  9@A6ic !")in; %)&?i&<& ./ 8  )&"@)n %)&?i& B C C B <&

  DD

Page 3: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 3/27

Класни дијаграми

26/05/16

 

 – Ги прикажува статичките структури на системот, односно неговите елементи

(класи и типови) т.е. нивните меусе!ни односи.

 – "ласниот ди#аграм може да содржи и интер$е#си (%&'*+), пакети (-++),

релаии (+'%3&4%-) т.е. инстани како то сео!#екти (378') и врски (%&)

 – 9сто така се нарекува и :статички структурен; ди#аграм ('+'% '<'<+ =%++>).

 7&е/ен" на 38а9ра/$"

 – класи, нивна структура и однесува?е (атри!ути и методи)

 0"а"', $3н$1

 – @!ична врска или асои#аи#а (+3%+'%3&)

 пример :корисникот поседува повеAе видео касети;.

 – агрегаи#а (++'%3&),

 на пример;мотор е дел од авионот;.

 – Bависност (=-&=&C) и наследува?е (%&4%'+&)

 на пример.:студентот е личност:.

  Д$*$&н"е&н $!на,

 – Dногукрантост (><'%-%%'C) E кардиналност

 – Fавига!илност (&+G%+7%%'C) – насока на поврHува?е – Iлоги (3 &+>)

Page 4: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 4/27

Page 5: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 5/27

26/05/16

Операција (метода) е не4то 4то класата може да прави, или 4то ти може4 данаправи4 со класата#

Листа од методи, доаEа под линија 4то 3и дели методите .9&)7"in/ со атрибутите#

сто така за операциите може да се дадат дополнителни информации# Fо за3радата4то следи после името на операција се ставаат параметри заедно со нивниот тип#

Ако операцијата е функција, то3а4 мора да се специ+ицира типот на вредноста 4то ја враGа#

Nруги додатни ин$ормаии то може да !идат дадени Hа атри!утите на

класите се ;on<=>ain ?$9ран'-ва@а no=e ?!а4е&еB,5

9ран'-ва@е"$  е текст во големи Hагради. Oекстот во Hагради

спеи$иира едно или повеAе правила (ограничува?а) то класата тре!а

да ги почитува.

Dа4е&еB, може да има Hа атри!ути или Hа операии. Oие даваат

дополнителни ин$ормаии Hа класата.

Page 6: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 6/27

Видлиост на атрибути и методи

@Hнака Oип на видливост @д каде може да сепристапи до нив

P Qавни (-<7%)Eметоди Nостапни се од !ило

каде

R Bатитени(-3''=)Eметоди

Jнатре вокласата/под класите

E Sриватни(-%G+')Eатри!ути

Jнатре во класата

TU 9мплементаиони Jнатре во пакетот

26/05/16

Sраво на пристап

-%G+'

Sраво на пристап-3''=

Sраво на пристап

-<7%

 Kтри!ути

Dетоди

 Kтри!ути

Dетоди

Визуелизација на класа

Page 7: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 7/2726/05/16

:р/ер Nа се нарта класата Hа опиува?е на сметките во

одредена продавниа. Bа секо#а сметка тре!а да се води !ро# на

сметката, наHив на продавниата, датум на сметката, листа на

купени проиHводи (се претпоставува дека веAе постои класа

V3%WG3=), листа на количини од купените проиHводи, вкупна сума

ко#а тре!а да се плати. Sретпоставената вредност на атри!утот

наHив на продавниата е XY%&Z – ['%-:.

Репрезентација на класа за опишување на сметка во продавница

Page 8: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 8/27

 !ример" *а се моделира класа за раHота со прозорци од IinJI!-HазиранараHотна околина#

  #а се о$е%$едат следните методи"

- метода за промена на за3лавје на прозорецот

- враGање на 3олемината на прозорот,

- поставување на 3олемината на прозорецот,

- методи за приказ на прозорецот,

- враGање на листа со компоненти .во прозорецот/,

- метода за поставување на видливоста на прозорот,

Класи потребни за моделирање на windowsбазиран интер!ејс 

Page 9: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 9/27

26/05/16

K(L дозволува приказ на врски,релации, помеEу класите вокласниот дија3рам#

остојат следниве начини на поврзување на класите помеEусеHе:

  $ %аисност .dependency /

  $ асоцијација .association/

  $ генерали%ација .generalization/

  $ агрегација .aggregation/

\елаии ка# класи во класен ди#аграм

Page 10: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 10/27

Асоцијација

26/05/16

Mо3а класите се поврзани заедно идејно, то3а4 врската енаречена асоцијација&  Fизуелно се претставува со линијакоја 4то поврзува две класи, при 4то името на асоцијацијата

е над линијата#

"ога една класа е поврHана со друга со асои#аи#а, секо#а од нив игра -&$9а  (3) во

асои#аи#ата. @вие улоги се прикажуваат на ди#аграмот !лиHу до класата Hа ко#а сеоднесуваат.

 Kсои#аи#а може да !иде многу покомлексна, повеAе класи може да !идат поврHани со

една класа.

Dногукратност(><'%-%%'C) (индикатор Hа многукратност) покажува !ро#от на о!#екти од

едната класа то се поврHани со !ро#от на о!#екти на другата класа. – кардиналност

9ндикатор (насока]]]) (&+G%+7%%'C)

 – стрелката со ко#а се оHначува насоката

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

 – двонасочна (стандардно)

E може да вклучува стереотипи(на пр. ^^*%&=__) 

Page 11: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 11/27

Кардиналност (многу кратност)

Nо означува бројот на објектитекои се вклучени во врската

рикажува со колку објектиO*OP објект може да се поврзе

Qе 3леда независно за секојастрана на врската

Pајчесто употребувани ознакиза мно3укратност во пракса сеR,S,T##R#

 Uа приказ на мно3укратностможе да се користи дискретенброј

  - пример RR#.за број начленови на +удбалска екипа/

  $ низа од броеви .пр# V##W/  $ комбинација од дискретни

броеви или низи од броеви

 

9ндикатор Bначе?е

0..1 Fиту еден илиеден

1 `амо еден

0..a или a Fиту еден илиповеAе

1..a bден или повеAе

+,7, +,7 или о!#екти

c c о!#екти каде c_1

0..c @д 0 до c о!#ектикаде c_1

1..c @д 1 до c о!#ектикаде c_1

26/05/16

Page 12: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 12/27

26/05/16

Oдна класа може да биде поврзана со дру3а на еден од следнивеначини:

' еден спрема еден

' еден спрема поее

  ' еден спрема еден или поее' еден спрема еден или ниту еден

' еден спрема ограниен интерал

' еден спрема тоно *

  ' еден спрема (мно+есто од и%бори) (еден спрема , или -) 

Oдна класа може да биде во асоцијација со самата себе# Xоа може да се случи ко3а класата има објекти 4то и3раат повеGеуло3и#

ваа асоцијација се нарекува рефлексина асоцијација&

Page 13: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 13/27

!ример

26/05/16

//Lичноста има едноHначна врска спрема компани#ата, па W>%d3>-+&%8+ може

да врати вредност од тип компани#а

//"омпани#ата има повеAе Hнача#на врска спрема личноста, па W>%e%&3' AевраAа о!#ект од класата e%&3'.

Page 14: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 14/27

.енерали%ација и наследуа/е

26/05/16

@днос помеу :надреден; и нему :подреден; елемент.

 

Eнадреден класа или над тип (<- +, <- 'C-) E родителска класа

Eподредена класа или под тип (<7 +, <7 'C-) E класа дете

bдна класа (под класата) може да ги наследи атри!утите и методите од друга

класа (над класа).

\одителската класа е многу поопта од класата дете.

Jо fge, генералиHаи#а е претставена со лини#а то #а поврHува родителскатакласа со класата дете, и од страна на класа родител има триаголник.

hто тре!а аналитичарот да направи Hа да го открие наследува?е]

 Kналитичарот тре!а да препоHнае кои атри!ути и методи од една класа се опти

и да ги додели на некои други класи.

Nруга можност е аналитичарот да Hа!ележи дека две или повеAе класи имаатHаеднички атри!ути и методи.

"ласите то немаат свои сопствени о!#екти се нарекуваат а*1"ра,"н ,&а15

Oие се користат само како основа Hа наследува?е. bдна класа се оHначува дека е

апстрактна, со тоа то не#Hиното име се пиува со i"#$i% 

Page 15: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 15/27

26/05/16

Page 16: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 16/27

26/05/16

:р/ер !а EерарE8а на на1&е3-ва@е в$ жв$"н1,$"$ ,ра&1"в$

Page 17: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 17/27

Агрегација (a00120a345*)

26/05/16

Sонегока класата може да се е составена од неколку компоненти класи.

Oоа е спеи$ичен вид на релаи#а наречена а9ре9а%8а5

`пеи#ален вид на асои#аи#а врска :елина дел;, :дел од;.

 Kгрегаи#ата е претставена, е претствена како iиерарiи#а со :елата; класа на

едната страна и компонентите на другата.

jелата класа со компонентите се поврHува со лини#а и ди#амант !лиHу до класата

"омпоненти се делови E агрегати, така да

E делот може да настане и да постои неHависно од елината

E со унитува?е на елината не се унитуваат не#Hините делови

E о!#ектот може да припаа во повеAе елини

E иста инстана од неко# о!#ект може да дели повеAе агрегати

Page 18: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 18/27

26/05/16

:р/ер !а а9ре9а%8а в$н FG 11"е/

Page 19: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 19/27

Компо%иција (c5675s4345*)

26/05/16

E строга вари#анта на агрегаи#а

E о!#ектот може да припаа само на една елина

E елементите посто#ат само додека постои о!#ектот.E се оHначува со полн ди#амант.

Page 20: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 20/27

!ример агрегација и рекур%ија

Page 21: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 21/27

26/05/16

8аисност (9272*92*c:)

Page 22: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 22/27

8адаа ;" *а се нацрта класниот дија3рам за опи4ување на компјутер# *асе претпостави дека секој компјутер е составен од монитор, тастатура,3лувче и централна единица# Fо централната единица може да има еденили повеGе Yард дискови и неколку Z[Z читачи

Page 23: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 23/27

26/05/16

онеко3а4 може да се стават о3раничувања во припадноста на составнитеделови во целината#

3раничувањата се претставуваат со испрекинати линии помеEу асоцијациите,а во 3олеми за3ради се става типот на о3раничувањето 87nJ, ), n",\D#

H&а1ен 38а9ра/ 1$ а9ре9а%8а ,$р1"е@е на $9ран'-ва@а

Page 24: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 24/27

Асоцијатина класа

26/05/16

онеко3а4, асоцијацијата може да има некоја уло3а# Uатоа севоведени асоцијативни класи# 0социјативните класи се асоцијациикои имаат име и атриHути, како и нормалните класи# 0социјативнатакласа се прикажува исто како и оHичните класи, само 4то со

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

Page 25: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 25/27

26/05/16

Page 26: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 26/27

26/05/16

8адаа<*а се нацрта класниот дија3рам составен од класите коипроизле3уваат од ор3анизацијата и начинот на раHота на некојакомпанија# Qе знае дека компанијата е составена од оддели, при 4то

во секој оддел може да има неколку под-оддели# Uа одделот треHада се чуваат ин+ормации за името на одделот, раководителот наодделот, како и Hројот на враHотени# Mомпанијата распола3а соповеGе канцеларии на различни локации# Uа секоја канцеларија севодат податоци за адресата на канцеларијата, како и теле+онскиотHрој# Fо една канцеларија може да се сместениповеGе оддели одкомпанијата#

  FраHотените се карактеризираат со нивното име и презиме,матичниот Hрој, датумот на враHотување, Hодовите за плата, како инивната плата# Qекој од враHотените во одреден момент може даHиде .или не Hиде/ ан3ажиран на некоја задача# 0ко е ан3ажиранто3а4 треHа да се знае од ко3а почнал да раHоти на задачата, доко3а треHа да ја завр4и и приоритетот на задачата која ја вр4и# Uазадачите треHа да се води име на задачата, краток опис и статус назадачата# Qтатусот на задачата може да Hиде еден од следните:почеток, во тек, завр4ена#

  *а се оHезHедат методи кои Gе проверуваат дали даден враHотенраHоти во даденоддел, дали враHотениот е 4е+ на одреден оддел,дали враHотениот раHоти на задача на која и 3о пречекорил рокот зазавр4ување#

Page 27: UML_ClassDijagrami_Cas4_ (7)

8/16/2019 UML_ClassDijagrami_Cas4_ (7)

http://slidepdf.com/reader/full/umlclassdijagramicas4-7 27/27