Agregācija pret sastāvu
Saturs
- Saturs: atšķirība starp agregāciju un sastāvu
- Salīdzināšanas tabula
- Kas ir agregācija?
- Galvenās atšķirības
- Secinājums
- Paskaidrojošs video
Galvenā atšķirība starp apkopošanu un sastāvu ir tā, ka apkopojumā pastāv vecāku un bērnu attiecības, kurās bērns var pastāvēt patstāvīgi, turpretī sastāvs ir vecāku un bērna attiecības, kurās bērns nevar pastāvēt patstāvīgi bez vecākiem.
Asociācija ir ļoti svarīgs jēdziens objektorientētā programmēšanā. Objektorientētā programmēšanā dati tiek paslēpti no klases funkcijām, kas nav biedri. Tikai klases dalībnieka funkcija var izmantot datus. Jebkura funkcija, kas nav dalībnieks, var modificēt datus, kas ietilpst funkciju klasē. Objekts un klases ir galvenās uz objektu orientētas programmēšanas koncepcijas. Datu iekapsulēšana, kas pazīstama arī kā abstrakcija un mantošana, tiek panākta arī objektorientētā programmēšanā. Apkopošana un sastāvs ir asociācijas veidi, un tie ir ļoti svarīgi priekšmeti orientētā programmēšanā. Apkopojot, pastāv vecāku un bērnu attiecības, kurās bērns var pastāvēt patstāvīgi, turpretī kompozīcija ir vecāku un bērnu attiecības, kurās bērns nevar pastāvēt patstāvīgi bez vecākiem. Kompozīcijai ir kopīga paradigma objektorientētā programmēšanā, kas ir ļoti svarīgi programmatūras izstrādē. Biedrošanās ierobežojošā forma ir kompozīcija, kurā pastāv vecāku un bērnu attiecības, kurās bērns nevar pastāvēt patstāvīgi bez vecākiem. UML to attēlo niecīgs ciets dimants.
Kompozīcijā sastāvdaļu var savienot ar lielāko daļu montāžā. Viena klase kļūst par konteineru, bet otra - par saturu, kas atrodas šajā konteinerā. Mantojuma daļa ir ļoti vienkārša, un vienas klases metodi var izmantot, pat nerakstot visu kodu vēlreiz. Kompozīcijā ir “daļa no” attiecībām. Apkopošana ir saistība ar salikšanas klasi ar sastāvdaļu klasi. UML, kas ir vienota modelēšanas valoda, kas parāda summēšanas attiecības ar līnijas segmentu. Apkopošana parāda attiecības, piemēram, viena pret vienu, viena pret daudzām, no daudzām pret daudzām. Ja mums vienai klasei ir vairākas klases, tad ir vienas pret daudzām attiecībām, turpretim daudzām klasēm ir vairāki objekti, kas ir attiecības “viens pret vienu”. “Ir” ir attiecības, kas aprakstītas apkopojumā.
Saturs: atšķirība starp agregāciju un sastāvu
- Salīdzināšanas tabula
- Kas ir agregācija?
- Galvenās atšķirības
- Secinājums
- Paskaidrojošs video
Salīdzināšanas tabula
Pamats | Apkopošana | Sastāvs |
Nozīme | Apkopojot, pastāv vecāku un bērnu attiecības, kurās bērns var pastāvēt patstāvīgi | Kompozīcija ir vecāku un bērnu attiecības, kurās bērns nevar pastāvēt patstāvīgi bez vecākiem.
|
Asociācija | Apkopošanā ir vāja asociācija. | Sastāvā ir izteikta asociācija. |
UML | UML apkopošanu var definēt, izmantojot līnijas segmentu | UML sastāvu var definēt, izmantojot dimantu. |
Funkcija | Montāžas svītrošanai nav ietekmes uz apkopošanu. | Kompozīcijas izdzēšana var ietekmēt to |
Kas ir agregācija?
Apkopošana ir saistība ar salikšanas klasi ar sastāvdaļu klasi. UML, kas ir vienota modelēšanas valoda, kas parāda summēšanas attiecības ar līnijas segmentu. Apkopošana parāda attiecības, piemēram, viena pret vienu, viena pret daudzām, no daudzām pret daudzām. Ja mums vienai klasei ir vairākas klases, tad ir vienas pret daudzām attiecībām, turpretim daudzām klasēm ir vairāki objekti, kas ir attiecības “viens pret vienu”. “Ir” ir attiecības, kas aprakstītas apkopojumā.
Kas ir kompozīcija?
Biedrošanās ierobežojošā forma ir kompozīcija, kurā pastāv vecāku un bērnu attiecības, kurās bērns nevar pastāvēt patstāvīgi bez vecākiem. UML to attēlo niecīgs ciets dimants. Kompozīcijā sastāvdaļu var savienot ar lielāko daļu montāžā. Viena klase kļūst par konteineru, bet otra - par saturu, kas atrodas šajā konteinerā. Tam ir ļoti vienkārša mantojuma daļa, un vienas klases metodi var izmantot, pat nerakstot visu kodu vēlreiz. Kompozīcijā ir “daļa no” attiecībām.
Galvenās atšķirības
- Apkopojot ir vecāku un bērnu attiecības, kurās bērns var pastāvēt patstāvīgi, turpretī kompozīcija ir vecāku un bērnu attiecības, kurās bērns nevar pastāvēt patstāvīgi bez vecākiem.
- Kopumā ir vāja asociācija, turpretī ir izteikta asociācijas sastāvs, turpretī ir spēcīga asociācija.
- UML apkopošanu var definēt, izmantojot līnijas segmentu, savukārt UML sastāvu var definēt, izmantojot dimantu.
- Montāžas dzēšanai nav ietekmes uz apkopošanu, turpretim kompozīcijas dzēšana var ietekmēt kompozīciju
Secinājums
Iepriekš šajā rakstā mēs redzam skaidru atšķirību starp apkopošanu un sastāvu ar piemēriem.