Avatar billede simon_jacobsen Nybegynder
24. oktober 2007 - 21:55 Der er 9 kommentarer og
1 løsning

agregation i klasse diagram

hej

jeg er ved at lave en klasse structur i visual studio, og kunne godt tænke mig at den kunne generere mit klassediagram, kan godt lave genereliseringer ved nedarvning, men hvordan laver man agregations ?
benytter p.t. ArrayLists men kan det gøres på en måde så visual studio kan tegne forbindelsen på det autogenerede klasse diagram ?

på forhånd tak :)
Avatar billede nielle Nybegynder
24. oktober 2007 - 22:08 #1
Hvis du har noget i stil med:

    class Demo1
    {
    }

    class Demo2
    {
        private Demo1[] dm1;
    }

- kan du i klasse-diagrammet højerklikke på dm1-feltet og fra den resulterende context-menu vælge enten "Show as Association" eller "Show as Collection Association". Men så er der vist heller ikke andre muligheder.
Avatar billede simon_jacobsen Nybegynder
24. oktober 2007 - 22:26 #2
kan jeg lave det sådan at jeg kan tilføje så mange objecter som jeg har lyst til, vil det ikke være et problem hvis jeg laver det ved et object array ?
eller kan man lave:
private Demo1[] dm1;
på en eller anden smart måde så jeg kan blive ved med at tilføje ?
Avatar billede nielle Nybegynder
24. oktober 2007 - 22:38 #3
Det må du vist forklare lidt mere.

Uanset, hvor mange objeker du hat i arrayet fm1 vil det kun vises som een pil i klasse diagrammet. Det er jo en aggresion,

Hvis du derimod har dem som enkelt felter:

    class Demo2
    {
        private Demo1 dm1;
        private Demo1 dm2;
        private Demo1 dm3;
        private Demo1 dm4;
    }

kan du få en "pil" for hvert objekt.
Avatar billede simon_jacobsen Nybegynder
24. oktober 2007 - 22:45 #4
hvis jeg benytter din løsning, hvor jeg skriver:
      private Demo1[] dm1;
bliver jeg så ikke nød til at erklære hvor manger Demo1 objecter jeg ønsker associeret ?
og kan jeg gøre noget hvis det ikke vides hvor mange Demo1 objecter
Avatar billede nielle Nybegynder
24. oktober 2007 - 22:48 #5
Min "løsning" var nu bare et eksempel på hvordan at det så ud i klasse-diagrammet.

Når vi nu snakker om hvor mange demo objekter der så kan være i et Demo1[] array så begynder vi at bevæge os over i kode og væk fra neoget om har med diagramering at gøre.
Avatar billede neoman Novice
24. oktober 2007 - 22:51 #6
Jeg kigger med fra sidelinjen - kunne egentligt også tænke mig at vide, hvis jeg f.eks. laver noget som svarer til en ASP.NET DropDownList, hvordan jeg så får lavet dens Items collection:)
Avatar billede nielle Nybegynder
24. oktober 2007 - 23:06 #7
Så vidt jeg forstår spørgsmålet så går det først og fremmest på hvordan og hvad Visual Studios diagrammeringsværktøj kan vise?
Avatar billede neoman Novice
24. oktober 2007 - 23:13 #8
lad mig ikke forstyrre slagets gang - kigger blot med, og når jeg selv er så langt, skal jeg nok poste et spørgsmål:.
Avatar billede simon_jacobsen Nybegynder
24. oktober 2007 - 23:29 #9
ja ok, ville bare gerne have en asociation hvor der gåes fra 1 til 0...*, men smid et svar
Avatar billede nielle Nybegynder
25. oktober 2007 - 08:28 #10
Værktøjet til at lave klasse-diagrammer er der i VS 2005, men man kan vist ikke ligefrem påstå at man kan lave UML diagrammer med det.

Måske bliver det bedre i VS 2008 som jo er lige rundt om hjørnet. Jeg har ikke selv kigget på beta'en (som kan downloades gratis fra Microsofts hjemmeside), så jeg skal ikke sværge.

Og ellers er der en integration mellem VS 2005 og Visio, som er langt bedre egnet til den slags.
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
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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