2009-03-13 14 views
0

Ich habe zwei Klassen, aber welche Art von Beziehung sollte ich nicht verwenden. Ich habe ein Klasse-Dokument mit vielen Eigenschaften und ohne Methoden. Die zweite Klasse ist die DocumentFact (Fact - Factory). Diese Klasse enthält verschiedene Methoden, die eine Sammlung von Document-Objekten zurückgibt.UML Klassendiagramm Beziehungstyp

Also, die Document-Klasse weiß nichts über die DocumentFact-Klasse, weil es nichts damit zu tun hat. Auf der anderen Seite erstellt DocumentFact mehrere Document-Objekte. Welche Art von UML-Beziehung ist das? Ich war so etwas wie dieses Denken:

--------------   ------------ 
|DocumentFact| -------> | Document | 
--------------  2.* ------------ 

Oder:

--------------   ------------ 
|DocumentFact| ------- []| Document |   // Composition 
--------------   ------------ 

Was denken Sie?

Antwort

1

ich mit Toolkit einverstanden, dass factories-> Produkt ist eine instanziiert Beziehung - die Vielzahl Descriptor gilt nicht, wenn die Fabrik auch bestimmt, in dem Verweis auf die Produktobjekte erhalten Fall es ein 1 ist: * oder 1: n (Multiton) sowieso

3

Nur meine Meinung - wenn DocumentFact wirklich eine Fabrik ist, würde ich die zusätzlichen drei Tastenanschläge ausgeben und es buchstabieren. Sie zwingen Benutzer Ihrer Klasse, herauszufinden, ob Sie "Dokumentfabrik" oder "Tatsache über ein Dokument" meinen, wenn sie den Klassennamen zum ersten Mal lesen. Die Ungewissheit ist unnötig, besonders wenn Sie den Typ berühren können. Ich würde empfehlen, den Namen selbstdokumentierender und weniger zweideutig zu machen.

+0

Off-Topic, aber ein sehr guter Rat !!! – Yarik