Aggregasjon vs. komposisjon
Innhold
- Innhold: Forskjell mellom aggregering og sammensetning
- Sammenligningstabell
- Hva er Aggregasjon?
- Viktige forskjeller
- Konklusjon
- Forklarende video
Den viktigste forskjellen mellom aggregering og sammensetning er at det i aggregering er et foreldrebarnsforhold der barnet kan eksistere uavhengig, mens sammensetning er et foreldrebarnsforhold der barnet ikke kan eksistere uavhengig uten foreldre.
Assosiasjon er et veldig viktig begrep innen objektorientert programmering. I objektorientert programmering blir dataene skjult for ikke-medlemsfunksjoner i en klasse. Bare medlemsfunksjonen til en klasse kan bruke data. Alle ikke-medlemsfunksjoner kan endre dataene som er innenfor funksjonsklassen. Objekt og klasser er hovedbegrepene for objektorientert programmering. Datakapsling som også kalles abstraksjon og arv oppnås også i objektorientert programmering. Aggregasjon og sammensetning er tilknytningstyper og er et veldig viktig begrep i objektorientert programmering. Sammenlagt er det et foreldrebarnsforhold der et barn kan eksistere uavhengig, mens sammensetning er et foreldrebarnsforhold der et barn ikke kan eksistere uavhengig uten foreldre. Sammensetning har et felles paradigme innen objektorientert programmering som er veldig viktig i programvareutvikling. Den restriktive tilknytningsformen er en sammensetning der det er et foreldrebarnsforhold der barnet ikke kan eksistere uavhengig uten foreldre. I UML er det representert av en bitteliten solid diamant.
I sammensetning kan den konstituerende delen knyttes til de fleste i samlingen. Én klasse blir container og andre klasser blir innhold som er i den containeren. Som har arvdel veldig enkelt, og metode for en klasse kan brukes uten å skrive hele koden igjen. Det er en "del av" forhold i komposisjonen. Aggregasjon er et forhold til en samlingsklasse til den konstituerende klassen. I UML er det enhetlige modelleringsspråk som viser aggregeringsforhold til et linjesegment. Aggregasjon viser forhold som en til en, en til mange, mange til mange. Hvis vi enkeltklasse har flere klasser, er det ett til mange forhold mens mange klasser har flere objekter er det mange til ett forhold. “Har en” er et forhold som beskrives samlet.
Innhold: Forskjell mellom aggregering og sammensetning
- Sammenligningstabell
- Hva er Aggregasjon?
- Viktige forskjeller
- Konklusjon
- Forklarende video
Sammenligningstabell
Basis | aggregering | sammensetning |
Betydning | Sammenlagt er det et foreldrebarnsforhold der barnet kan eksistere uavhengig av hverandre | Sammensetningen er et foreldrebarnsforhold der et barn ikke kan eksistere uavhengig uten foreldre.
|
assosiasjon | Det er en svak forening i aggregering. | Det er en sterk forening i komposisjon. |
UML | I UML kan aggregering defineres ved å bruke linjesegmentet | I UML kan sammensetning defineres ved bruk av diamant. |
Funksjon | Sletting av montering har ingen effekt i aggregeringen. | Sletting av sammensetningen kan påvirke komposisjonen |
Hva er Aggregasjon?
Aggregasjon er et forhold til en samlingsklasse til den konstituerende klassen. I UML er det enhetlige modelleringsspråk som viser aggregeringsforhold til et linjesegment. Aggregasjon viser forhold som en til en, en til mange, mange til mange. Hvis vi enkeltklasse har flere klasser, er det ett til mange forhold mens mange klasser har flere objekter er det mange til ett forhold. “Har en” er et forhold som beskrives samlet.
Hva er sammensetning?
Den restriktive tilknytningsformen er en sammensetning der det er et foreldrebarnsforhold der barnet ikke kan eksistere uavhengig uten foreldre. I UML er det representert av en bitteliten solid diamant. I sammensetning kan den konstituerende delen knyttes til de fleste i samlingen. Én klasse blir container og andre klasser blir innhold som er i den containeren. Som har arvdel veldig enkelt, og metode for en klasse kan brukes uten å skrive hele koden igjen. Det er en "del av" forhold i komposisjonen.
Viktige forskjeller
- Sammenlagt er det et foreldrebarnsforhold der barnet kan eksistere uavhengig, mens sammensetning er et foreldrebarnsforhold der et barn ikke kan eksistere uavhengig uten foreldre.
- Det er en svak forening i aggregering, mens det er en sterk assosiasjon i sammensetning, mens det er en sterk forening i sammensetning.
- I UML kan aggregering defineres ved å bruke linjesegment, mens I UML kan sammensetning defineres ved bruk av diamant.
- Sletting av montering har ingen effekt i aggregering, mens sletting av sammensetningen kan påvirke sammensetningen
Konklusjon
I denne artikkelen over ser vi den klare forskjellen mellom aggregering og sammensetning med eksempler.