Kas yra klasė?
Klasė yra projektas, naudojamas kuriant objektą. Klasė apibrėžia, ką objektas gali padaryti.
Kas yra klasės diagrama?
„UML CLASS DIAGRAM“ pateikia programinės įrangos sistemos apžvalgą, pateikdama klases, atributus, operacijas ir jų ryšius. Ši schema apima klasės pavadinimą, atributus ir operaciją atskiruose tam skirtuose skyriuose.
„Class Diagram“ apibrėžia sistemos objektų tipus ir tarp jų egzistuojančius skirtingus santykių tipus. Tai suteikia aukšto lygio programos vaizdą. Šis modeliavimo metodas gali būti naudojamas su beveik visais į objektą orientuotais metodais. Klasė gali nurodyti kitą klasę. Klasė gali turėti savo objektus arba paveldėti iš kitų klasių.
„Class Diagram“ padeda sukurti programinės įrangos programų kūrimo kodą.
Šioje pamokoje sužinosite:
- Kas yra klasė?
- Kas yra klasės diagrama?
- Klasės diagramos pranašumai
- Esminiai UML klasės diagramos elementai
- Klasės pavadinimas
- Atributai:
- Santykiai
- Apibendrinimas ir sudėtis
- Abstrakčios klasės
- UML klasės diagramos pavyzdys:
- Klasės schema programinės įrangos kūrimo gyvavimo cikle:
- Geriausia klasės diagramos kūrimo praktika
Klasės diagramos pranašumai
- „Class Diagram“ iliustruoja net labai sudėtingų informacinių sistemų duomenų modelius
- Joje pateikiama programos struktūros apžvalga prieš studijuojant tikrąjį kodą. Tai gali lengvai sutrumpinti priežiūros laiką
- Tai padeda geriau suprasti bendrąsias programos schemas.
- Leidžia piešti išsamias diagramas, kuriose pabrėžiamas kodas, kurį reikia užprogramuoti
- Naudinga kūrėjams ir kitoms suinteresuotosioms šalims.
Esminiai UML klasės diagramos elementai
Esminiai UML klasės diagramos elementai yra šie:
- Klasės pavadinimas
- Atributai
- Operacijos
Klasės pavadinimas
Klasės pavadinimas reikalingas tik grafiniame klasės vaizde. Jis pasirodo viršutiniame skyriuje. Klasė yra objekto, galinčio turėti tuos pačius ryšius, atributus, operacijas ir semantiką, planas. Klasė pateikiama kaip stačiakampis, įskaitant jos pavadinimą, atributus ir operacijas atskiruose skyriuose.
Atstovaujant klasei reikia laikytis šių taisyklių:
- Klasės pavadinimas visada turėtų prasidėti didžiąja raide.
- Klasės pavadinimas visada turėtų būti pirmojo skyriaus centre.
- Kurso pavadinimas visada turi būti parašytas paryškintu formatu.
- Abstraktus klasės pavadinimas turėtų būti parašytas kursyvu.
Atributai:
Atributas vadinamas klasės ypatybe, apibūdinančia modeliuojamą objektą. Klasės diagramoje šis komponentas dedamas tiesiai po pavadinimo skyriumi.
Išvestinis atributas apskaičiuojamas iš kitų atributų. Pavyzdžiui, studento amžių galima lengvai apskaičiuoti nuo jo gimimo datos.
Atributų charakteristikos
- Atributai paprastai rašomi kartu su matomumo koeficientu.
- Viešasis, privatusis, apsaugotas ir paketas yra keturi matomumai, kurie žymimi atitinkamai +, -, # arba ~ ženklais.
- Matomumas apibūdina klasės atributo prieinamumą.
- Atributai turi turėti prasmingą pavadinimą, apibūdinantį jo naudojimą klasėje.
Santykiai
UML daugiausia yra trijų rūšių santykiai:
- Priklausomybės
- Apibendrinimai
- Asociacijos
Priklausomybė
Priklausomybė reiškia santykį tarp dviejų ar daugiau klasių, kuriose vienos pokyčiai gali priversti keisti kitus. Tačiau tai visada sukurs silpnesnius santykius. Priklausomybė rodo, kad viena klasė priklauso nuo kitos.
Šiame pavyzdyje studentas priklauso nuo kolegijos
Apibendrinimas:
Apibendrinimas padeda prijungti poklasį prie jo superklasės. Pogrupis paveldimas iš jo superklasės. Apibendrinimo ryšys negali būti naudojamas sąsajos diegimui modeliuoti. Klasių diagrama leidžia paveldėti iš kelių superklasių.
Šiame pavyzdyje klasės Mokinys apibendrintas iš Asmens klasės.
Asociacija:
Šie santykiai atspindi statinius santykius tarp A ir B klasių. Pavyzdžiui; darbuotojas dirba organizacijoje.
Štai keletas asociacijos taisyklių:
- Asociacija dažniausiai yra veiksmažodis arba veiksmažodžio frazė arba daiktavardis arba daiktavardžio frazė.
- Jis turėtų būti pavadintas, kad būtų nurodytas klasės vaidmuo, pridedamas asociacijos kelio pabaigoje.
- Privaloma refleksinėms asociacijoms
Šiame pavyzdyje parodomas studento ir kolegijos santykis, kuris yra studijos.
Daugybė
Daugybė yra veiksnys, susijęs su atributu. Jis nurodo, kiek atributų egzempliorių sukuriama inicijuojant klasę. Jei kartotinumas nenurodytas, pagal nutylėjimą jis laikomas numatytuoju daugybe.
Tarkime, kad vienoje kolegijoje yra 100 studentų. Kolegijoje gali būti keli studentai.
Apibendrinimas
Agregavimas yra specialus asociacijos tipas, kuris modeliuoja visos dalies santykį tarp visumos ir jos dalių.
Pavyzdžiui, klasės kolegiją sudaro vienas ar keli studentai. Apibendrinant, sudėtinės klasės niekada nėra visiškai priklausomos nuo konteinerio gyvavimo ciklo. Čia kolegijos klasė išliks, net jei studento nebus.
Sudėtis:
Kompozicija yra specialus agregavimo tipas, žymintis tvirtą dviejų klasių nuosavybę, kai viena klasė yra kitos klasės dalis.
Pavyzdžiui, jei kolegiją sudaro klasės studentai. Kolegijoje gali būti daug studentų, o kiekvienas studentas priklauso tik vienai kolegijai. Taigi, jei koledžas neveikia, visi studentai taip pat buvo pašalinti.
Apibendrinimas ir sudėtis
Apibendrinimas |
Kompozicija |
Apibendrinimas rodo santykius, kai vaikas gali egzistuoti atskirai nuo savo tėvų klasės. Pavyzdys: automobilis (tėvas) ir automobilis (vaikas). Taigi, jei ištrinsite automobilį, vaikas automobilis vis dar egzistuoja. |
Kompozicijos rodymo santykis, kai vaikas niekada nebus nepriklausomas nuo tėvų. Pavyzdys: namas (tėvai) ir kambarys (vaikas). Kambariai niekada nebus atskirti namais. |
Abstrakčios klasės
Tai klasė su operacijos prototipu, bet ne įgyvendinimu. Taip pat galima turėti abstrakčią klasę, kurioje nebūtų deklaruojamos jokios operacijos. Santrauka yra naudinga klasių funkcijoms nustatyti. Panagrinėkime abstrakčios klasės pavyzdį. Tarkime, kad mes turime abstrakčią klasę, vadinamą judesiu, kurio viduje deklaruojamas metodas ar operacija. Abstrakčios klasės viduje deklaruojamas metodas vadinamas judesiu () .
Šį abstrakčios klasės metodą dabartiniam padėčiai pakeisti gali naudoti bet koks objektas, pvz., Automobilis, gyvūnas, robotas ir kt. Šį abstrakčios klasės metodą efektyvu naudoti su objektu, nes duotai funkcijai nepateikiamas joks įgyvendinimas. Mes galime jį naudoti bet kokiu būdu keliems objektams.
UML abstrakčioji klasė turi tą patį žymėjimą kaip ir klasė. Vienintelis klasės ir abstrakčios klasės skirtumas yra tas, kad klasės pavadinimas griežtai rašomas kursyvu.
Abstraktios klasės negalima inicijuoti ar inicijuoti.
Pirmiau pateiktame abstrakčiame klasių užraše yra vienintelis abstraktus metodas, kurį gali naudoti keli klasių objektai.
UML klasės diagramos pavyzdys
Klasių diagramos sukūrimas yra nesudėtingas procesas. Tai nereiškia daug techninių dalykų. Štai pavyzdys:
Bankomatų sistema yra labai paprasta, nes norėdami gauti grynųjų pinigų, klientai turi paspausti keletą mygtukų. Tačiau yra keli saugos sluoksniai, kuriuos reikia perduoti bet kuriai bankomatų sistemai. Tai padeda išvengti sukčiavimo ir pateikti banko klientams grynųjų pinigų ar reikalingos informacijos.
Žemiau pateikiamas UML klasės diagramos pavyzdys:
Klasės schema programinės įrangos kūrimo gyvavimo cikle
Klasių diagramos gali būti naudojamos įvairiuose programinės įrangos kūrimo etapuose. Tai padeda modeliuoti klasių diagramas trimis skirtingais požiūriais.
1. Konceptuali perspektyva: koncepcinėse diagramose aprašomi dalykai realiame pasaulyje. Turėtumėte nupiešti schemą, atspindinčią tiriamo domeno sąvokas. Šios sąvokos susijusios su klase ir ji visada nepriklauso nuo kalbos.
2. Specifikacijos perspektyva: Specifikacijos perspektyva apibūdina programinės įrangos abstrakcijas ar komponentus su specifikacijomis ir sąsajomis. Tačiau tai nėra įsipareigojimas konkrečiam įgyvendinimui.
3. Įgyvendinimo perspektyva: Šio tipo klasės diagramos naudojamos įgyvendinant konkrečią kalbą ar programą. Diegimo perspektyva, naudojimas programinės įrangos diegimui.
Geriausia klasės diagramos kūrimo praktika
Klasių diagramos yra svarbiausios UML diagramos, naudojamos kuriant programinę įrangą. Yra daugybė savybių, į kurias reikėtų atsižvelgti piešiant klasės schemą. Jie atspindi įvairius programinės įrangos aspektus.
Štai keletas dalykų, kuriuos reikėtų nepamiršti piešiant klasės diagramą:
- Klasių schemai suteiktas pavadinimas turi būti prasmingas. Be to, jame turėtų būti aprašytas tikrasis sistemos aspektas.
- Kiekvieno elemento santykį reikia iš anksto nustatyti.
- Reikia nustatyti atsakomybę už kiekvieną klasę.
- Kiekvienai klasei turėtų būti nurodytas minimalus savybių skaičius. Todėl nepageidaujamos savybės gali lengvai padaryti diagramą sudėtingą.
- Vartotojo pastabos turėtų būti įtrauktos, kai tik reikia apibrėžti kurį nors diagramos aspektą. Piešimo pabaigoje tai turi būti suprantama programinės įrangos kūrimo komandai.
- Galiausiai, prieš kuriant galutinę versiją, schemą reikia nupiešti ant paprasto popieriaus. Be to, jis turėtų būti perdirbtas, kol bus paruoštas galutiniam pateikimui.
Išvada
- UML yra standartinė kalba, skirta programinės įrangos sistemų artefaktams nurodyti, projektuoti ir vizualizuoti
- Klasė yra objekto projektas
- Klasės diagrama apibūdina sistemos objektų tipus ir skirtingus tarpusavio santykius
- Tai leidžia analizuoti ir suprojektuoti statinį programinės įrangos vaizdą
- Klasių diagramos yra svarbiausios UML diagramos, naudojamos kuriant programinę įrangą
- Esminiai UML klasės diagramos elementai yra 1) 2 klasė) Atributai 3) Ryšiai
- „Class Diagram“ pateikia apžvalgą, kaip programa yra struktūrizuota prieš studijuojant tikrąjį kodą. Tai tikrai sutrumpina priežiūros laiką
- Klasės diagrama yra naudinga norint susieti objektines programavimo kalbas, tokias kaip „Java“, „C ++“, „Ruby“, „Python“ ir kt.