Avatar billede p_gaard Juniormester
09. januar 2009 - 00:43 Der er 6 kommentarer og
1 løsning

UML - Aggragering og komposition og association

Er her en som har forslag til hvordan man bedst demonstrerer aggragering og komposition og association i ultra simpel java kode.

Jeg forestiller mig noget ala:




Komposition:

public class kvadrat {

public kvadrat {

new linie(top);
new linie(højre);
new linie(bund);
new linie(venstre);

}

}

Er det korrekt?

Hvordan med aggragering og association
Avatar billede arne_v Ekspert
09. januar 2009 - 00:47 #1
Nej.

Komposition vil være 4 fields af typen linie.
Avatar billede arne_v Ekspert
09. januar 2009 - 00:47 #2
PS: per konvention så starter class names med stort i Java.
Avatar billede arne_v Ekspert
09. januar 2009 - 00:48 #3
En aggregering kunne være figurer inden i figurer.

Og en almindelig association kunne være figurer som rører figurer.
Avatar billede p_gaard Juniormester
09. januar 2009 - 09:47 #4
public class Kvadrat
{

Linie top;
Linie right;
Linie left;
Linie bottom;

}

Er det virkelig det hele?. Jeg forstår ved komposition at kvadrat objektet skal oprette linierne og ved fjernelse af kvadrat skal kvadrat nedlægge linierne.

I det eksempel på aggregering kan de indre figurer godt optræde selvstændigt uden den ydre. Vil det sige at det bare er en masse uafhængige figur objekter som på en eller anden måde er knyttet til hinanden?

(jeg skal bruge det i et mundtligt oplæg til en eksamen).
Avatar billede arne_v Ekspert
09. januar 2009 - 15:20 #5
Ved ovenstaaende vil et Kvadrat bestaa af 4 linier og de er meget taet koblet.

Der skal naturligvis vaere en masse kode til oprettelse etc. men det ligger i operationerne.

----

Ihvertfald i nogen sammenhaenge kan man godt definere at de indre figurer tilhoerer
den ydre figur, men det giver mening at overfoere en indre figur til en anden
ydre figur. Derfor mener jeg godt at man kan kalde det aggregering.

----

Generelt er jeg ikke begejstret for eksmeplet. Kvadrat og Linie vil nok vaere elendig
OOP og aggregering/associering haenger lidt paa nogle business rules.
Avatar billede p_gaard Juniormester
12. januar 2009 - 15:10 #6
Tak for hjælpen! Du fik figurerne til at falde på plads for mig.

Jeg bestod min eksamen i OOM med pæn karakter.

Jeg skal give point når du lige sender.
Avatar billede arne_v Ekspert
12. januar 2009 - 15:47 #7
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester