Objektorienterad programmering är ett gemensamt paradigm som används vid mjukvaruutveckling. Objektet är en förekomst av en klass som skapas av klasser. Objekten samarbetar med varandra genom länkar. Länkar är den fysiska och konceptuella anslutningen som finns mellan objekten. En samling länkar med liknande struktur och semantik beskrivs som en förening .
Jämförelsediagram
Grunder för jämförelse | aggregation | Komposition |
---|---|---|
Grundläggande | I aggregering uppvisar man ett förhållande där ett barn kan existera oberoende av föräldern. | I sammansättning kan den inte existera oberoende av föräldern. |
Typ av relation | "har en" | "del av" |
Föreningstyp | Svag förening | Stark association |
UML design symbol | Representerad av en ihålig diamant bredvid monteringen klass. | Representerad av en solid diamant bredvid monteringen klass. |
Fungera | Raderingen av monteringen påverkar inte dess delar. | Om ägarklassobjektet raderas kan det påtagligt påverka det innehållande klassobjektet. |
Definition av aggregering
Aggregation kan definieras som ett förhållande med en monterings klass till komponent klass. Förhållandet mellan två objekt kan representeras genom att dra ett linjesegment i UML (Unified Modeling Language).
Till exempel består en bil av hjul, motor, växellåda, styrning, huvudkropp, etc. En bil är en montering, och de andra delarna är dess beståndsdelar. Bil till hjul är en aggregering, bil till motorer är en annan aggregering och så vidare. Varje enskild parning definieras för att ange multipliciteten av varje beståndsdel i aggregatet som ett resultat kan antalet objekt också avbildas.
Sammanlagningen är en typ av förening som beskriver en "har en" typ av relation mellan objekten. Till exempel har en bil "en växellåda, och en bil" har en "motor" . För ett till många förhållande, ett exempel är en bil "har" många hjul .
Definition av komposition
Kompositionen är också en typ av association men en mer restriktiv form. Den är representerad i UML med en liten solid diamant intill monteringsklassen.
Således betyder komposition ägande av den ingående delen av hela. Detta skulle i slutändan öka bekvämligheten för programmeringen. Kompositionen kan utlösa deletionen av det beståndsobjektet genom radering av ett monteringsobjekt.
Kompositionen beskriver en "del av" relation. Till exempel är ett löv en del av ett träd, om trädet förstörs, måste bladen förstöras.
Viktiga skillnader mellan aggregering och sammansättning
- Aggregation anger ett förhållande där ett barn och moderföretag kan existera självständigt. När det gäller kompositionen är barnenheten beroende av föräldern.
- Sammanlagt finns det ett "har" förhållande, medan det i sammansättningen finns en "del av" relation mellan montering och beståndsdelarna.
- Sammanslagning är svag förening medan kompositionen är en stark förening eftersom den har mer begränsningar.
- I UML-design beskrivs aggregeringen av en ihålig diamant. I motsats härtill är kompositionen avbildad av en fast diamant.
Slutsats
Sammantaget har de ingående delarna den oberoende existensen och kan delas eller omfördelas till aggregat eller dess montering. Å andra sidan, i sammansättning, tillhör den ingående delen exakt en sammansättning eller aggregat. Dessutom skapas delen när aggregatet bildas, och delen förstörs när aggregatet förstörs.