Objektorienteeritud programmeerimine (OOP) on tarkvara arendamisel tavaline paradigma. Objekt on klassi eksemplar. Objekte pole võimalik korraga luua. Objekti loomiseks peaks olema plaan või kirjeldus. Seda projekti tuntakse klassina. Klass sisaldab omadusi ja meetodeid. Objektide loomiseks kasutatakse klasse. Klass ja objekt sarnanevad reaalses plaanis ja majaga. Ilma korraliku plaanita pole maja võimalik ehitada. Samamoodi kasutatakse objekti loomiseks klassi. Objekt teeb koostööd teiste objektidega. Seost, mis tähistab kahe või enama objekti suhet, nimetatakse seostamiseks. Liitmine ja koosseis on tüüpi ühendused. Nad kirjeldavad klasside suhet. Selles artiklis käsitletakse liitmise ja koostise erinevust. võtme erinevus liitmise ja kompositsiooni vahel on see liitmine on seos kahe objekti vahel, mis kirjeldab seost „on” ja kompositsioon on spetsiifilisem liitmise tüüp, mis eeldab omandivormi.
1. Ülevaade ja peamised erinevused
2. Mis on liitmine
3. Mis on koostis
4. Koondumise ja koostise sarnasused
5. Võrdlus kõrvuti - koondamine vs kompositsioon tabelina
6. Kokkuvõte
Kahe objekti vahelist suhet näidatakse UML-i joonestades. Link on ühing. UML aitab saada süsteemi visuaalset esitust. See erineb tavalistest programmeerimiskeeltest. Assotsiatsioon määratleb ka objektide paljususe. Neid on üks-ühele, üks-paljudele ja palju-paljudele. Kui klassi A üksik objekt on seotud klassi B ühe objektiga, on see üks-ühele suhe. Näide on raamatut kirjutav autor. Selles näites kirjutab üks autor raamatut.
Kui üks A-klassi objekt seostatakse paljude B-klassi objektidega, on see suhe üks ühele. Näiteks võib osakonnas olla palju töötajaid. Kui klassi A objekt on seotud paljude klassi B objektidega ja klassi B objekt on seotud paljude klassi A objektidega, on see seos paljudest-paljudele. Üks näide on see, et töötaja võib töötada mitme projektiga ja projektil võib olla mitu töötajat.
Agregeerimine on tüüpi assotsiatsioon, mis kirjeldab veelgi objektide vahelist suhet. Agregeerimine kirjeldab suhet. Mõned näited, mis suhet kirjeldavad, on õpilasel “õpilase ID”, sõidukil “mootor”. Suhtega on võimalik laiendada ka suurt kogust. Mõned näited on: pangal on palju pangakontosid, klassil on palju õpilasi. Seda saab selgitada allpool toodud näite abil.
Joonis 01: liitmine
Ülaltoodud näite kohaselt koosneb klassiruum õpilasest või paljudest õpilastest. Objektide arvu märkimiseks kasutatakse ka paljusust. See kirjeldab, et ühes klassiruumis on mitu õpilast. Teemandi sümbol tähistab agregatsiooni UML-is. Õpilasobjektid ei sõltu klassiobjektist. Kui klassiobjekt hävitatakse, ei mõjuta see õpilasobjekte. Need objektid jäävad alles.
Kompositsioon on täpsem liitmise vorm. See kirjeldab omandiõigust. Seda saab selgitada allpool toodud näite abil.
Joonis 02: kompositsioon
Eelneva kohaselt koosneb raamatuobjekt leheküljeobjektist või lehtedest. Objektide arvu märkimiseks kasutatakse ka paljusust. See kirjeldab, et ühes klassiruumis on mitu õpilast. Esiletõstetud teemandi sümbol tähistab kompositsiooni UML-is. Kuna raamatul on leht või palju lehti, on see kokkuvõte, kuid see on täpsustatud. Kui raamatuobjekt hävitatakse, hävitatakse ka leheobjektid. Leheobjektid ei saa eksisteerida ilma raamatuobjektita. Seetõttu on kompositsioon konkreetsemaks vormiks liitmine, mis eeldab omandilist kuuluvust.
Koondumine vs koostis | |
Agregeerimine on seos kahe objekti vahel, mis kirjeldab suhet "on". | Kompositsioon on kõige spetsiifilisem liitmise tüüp, mis eeldab omandiõigust. |
UML sümbol | |
Agregatsiooni tähistatakse teemandiga. | Kompositsiooni tähistatakse esiletõstetud teemandiga. |
Funktsionaalsus | |
Kui kokkuvõtlik objekt hävitatakse, ei mõjuta see seda sisaldavat eset. | Kui koosseisuline objekt hävib, mõjutab see seda sisaldavat eset. |
Objektorienteeritud programmeerimine on tarkvara arendamise peamine paradigma. OOP-is modelleeritakse süsteem objektide abil. Neid objekte ei eksisteeri isoleeritult. Objektid teevad koostööd teiste objektidega. Objektide vahelist suhet tuntakse assotsiatsioonina. Liitmine ja koosseis on seostamise tüübid. Liitmise ja koostise erinevus seisneb selles, et liitmine on kahe objekti vaheline seos, mis kirjeldab seost "on" ja koostis on spetsiifilisem liitmise tüüp, mis eeldab omandilist kuuluvust. Nii koondamine kui ka koostis aitavad süsteemi käitumist mõista.
Selle artikli PDF-versiooni saate alla laadida ja seda võrguühenduseta otstarbel kasutada tsitaatide märkuse kohaselt. Laadige alla PDF-versioon siit. Agregatsiooni ja kompositsiooni erinevus
1. Kasutades koondamist ja kompositsiooni, Inimeste karjäär, 22. mai 2015. Saadaval siin