Verschil Tussen Aggregatie En Compositie

Inhoudsopgave:

Verschil Tussen Aggregatie En Compositie
Verschil Tussen Aggregatie En Compositie

Video: Verschil Tussen Aggregatie En Compositie

Video: Verschil Tussen Aggregatie En Compositie
Video: Uitleg compositie 2024, Mei
Anonim

Belangrijkste verschil - Aggregatie versus samenstelling

Object-Oriented Programming (OOP) is een veelgebruikt paradigma in softwareontwikkeling. Het object is een instantie van een klasse. Het is niet mogelijk om in één keer objecten te maken. Er moet een blauwdruk of een beschrijving zijn om een object te maken. Die blauwdruk staat bekend als een klasse. Een klasse bevat eigenschappen en methoden. Objecten worden gemaakt met klassen. Klasse en object zijn vergelijkbaar met een plattegrond en huis in de echte wereld. Het is niet mogelijk om een huis te bouwen zonder een goed plan. Evenzo wordt een klasse gebruikt om een object te maken. Een object werkt samen met andere objecten. Een link met staat voor de relatie van twee of meer objecten wordt een "associatie" genoemd. Aggregatie en samenstelling zijn soorten associaties. Ze beschrijven de relatie tussen klassen. Dit artikel bespreekt het verschil tussen aggregatie en compositie. Het belangrijkste verschil tussen aggregatie en compositie is dat aggregatie een associatie is tussen twee objecten die de 'heeft een'-relatie beschrijft en dat compositie een meer specifiek type aggregatie is dat eigendom impliceert.

INHOUD

1. Overzicht en belangrijkste verschil

2. Wat is aggregatie

3. Wat is compositie

4. Overeenkomsten tussen aggregatie en compositie

5. Vergelijking zij aan zij - Aggregatie versus compositie in tabelvorm

6. Samenvatting

Wat is aggregatie?

Een relatie tussen twee objecten wordt getoond door een lijn te trekken in Unified Modeling Language (UML). De link is een vereniging. UML helpt om een visuele weergave van het systeem te krijgen. Het is anders dan gewone programmeertalen. Associatie definieert ook de veelheid aan objecten. Ze zijn één-op-één, één-op-veel en veel-op-veel. Wanneer een enkel object van klasse A wordt geassocieerd met het enkele object van klasse B, is dat een één-op-één-relatie. Een voorbeeld is een auteur die een boek schrijft. In dat voorbeeld schrijft één auteur een boek.

Wanneer een object van klasse A wordt geassocieerd met veel objecten van klasse B, is het een een-op-veel-relatie. Een voorbeeld is dat een afdeling veel medewerkers kan hebben. Wanneer het object van klasse A wordt geassocieerd met veel objecten van klasse B en een object van klasse B wordt geassocieerd met veel objecten van klasse A, is het een veel-op-veel-associatie. Een voorbeeld is, een medewerker kan aan meerdere projecten werken en een project kan meerdere medewerkers hebben.

Aggregatie is typeassociatie die de relatie tussen objecten nader beschrijft. Aggregatie beschrijft "heeft een" relatie. Enkele voorbeelden die de relatie beschrijven zijn: een leerling “heeft een” leerling-ID, een voertuig “heeft een” motor. Het is ook mogelijk om een grote hoeveelheid uit te breiden met de relatie. Enkele voorbeelden zijn: een bank "heeft veel" bankrekeningen, een klas "heeft veel" studenten. Het kan worden uitgelegd aan de hand van het onderstaande voorbeeld.

Verschil tussen aggregatie en compositie
Verschil tussen aggregatie en compositie

Figuur 01: Aggregatie

Volgens het bovenstaande voorbeeld bestaat het klaslokaal uit een leerling of uit veel leerlingen. Multipliciteit wordt ook gebruikt om het aantal objecten aan te geven. Het beschrijft dat een klaslokaal meerdere studenten heeft. Het symbool van de diamant staat voor de aggregatie in UML. Studentobjecten zijn niet afhankelijk van het klasseobject. Als het klasseobject wordt vernietigd, heeft dit geen invloed op de leerlingobjecten. Die objecten zullen nog steeds bestaan.

Wat is compositie?

De samenstelling is een meer specifieke vorm van aggregatie. Het beschrijft het eigendom. Het kan worden uitgelegd aan de hand van het onderstaande voorbeeld.

Belangrijkste verschil tussen aggregatie en compositie
Belangrijkste verschil tussen aggregatie en compositie

Figuur 02: Samenstelling

Volgens het bovenstaande bestaat het boekobject uit pagina-object of pagina's. Multipliciteit wordt ook gebruikt om het aantal objecten aan te geven. Het beschrijft dat een klaslokaal meerdere studenten heeft. Het symbool van diamant dat is gemarkeerd, vertegenwoordigt de compositie in UML. Omdat het boek een pagina of veel pagina's heeft, is het een aggregatie, maar het is meer gespecificeerd. Als het boekobject wordt vernietigd, worden de pagina-objecten ook vernietigd. Pagina-objecten kunnen niet bestaan zonder het boekobject. Daarom is de compositie een meer specifieke vorm van een aggregatie die eigendom impliceert.

Wat zijn de overeenkomsten tussen aggregatie en compositie?

  • Beide worden gebruikt bij Object Oriented Programming.
  • Beide worden gebruikt in Unified Modeling Language (UML) om een visueel begrip van het systeem te krijgen.

Wat is het verschil tussen aggregatie en compositie?

Diff Artikel Midden voor Tafel

Aggregatie versus samenstelling

Aggregatie is een associatie tussen twee objecten die de "heeft een" -relatie beschrijft. De compositie is het meest specifieke type aggregatie dat eigendom impliceert.
UML-symbool
Aggregatie wordt aangegeven met een diamant. Samenstelling wordt aangegeven door een gemarkeerde diamant.
Functionaliteit
Samengevat, als het object dat de eigenaar is vernietigd, heeft dit geen invloed op het object dat de eigenaar is. In compositie, als het bezittende object wordt vernietigd, heeft dit invloed op het bevattende object.

Samenvatting - Aggregatie versus samenstelling

Objectgeoriënteerd programmeren is een belangrijk paradigma in softwareontwikkeling. In OOP wordt het systeem gemodelleerd met behulp van objecten. Deze objecten staan niet op zichzelf. Objecten werken samen met andere objecten. De relatie tussen objecten staat bekend als associatie. Aggregatie en samenstelling zijn soorten associaties. Het verschil tussen aggregatie en compositie is dat aggregatie een associatie is tussen twee objecten die de 'heeft een'-relatie beschrijft en dat compositie het meer specifieke type aggregatie is dat eigendom impliceert. Aggregatie en samenstelling helpen beide om het gedrag van het systeem te begrijpen.

Download de pdf-versie van aggregatie versus compositie

U kunt de PDF-versie van dit artikel downloaden en voor offline doeleinden gebruiken volgens de citatienota. Download hier de pdf-versie Difference Between Aggregation and Composition

Aanbevolen: