UML Диаграма на клас Тип релация

Имам два класа, но не знам каква връзка трябва да използвам. Имам клас Document с много свойства и без методи. Вторият клас е това, което нарекох DocumentFact (факт - фабрика). Този клас съдържа различни методи, които връщат колекция от обекти Document.

И така, класът Document не знае нищо за класа DocumentFact, защото няма нищо общо с него. От друга страна, DocumentFact създава множество обекти Document. Какъв вид UML релация е това? Мислех си нещо подобно:

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

Or:

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

Какво мислиш?


person Martijn    schedule 13.03.2009    source източник


Отговори (3)


Звучи повече като инстанцира връзка на зависимост?

http://publib.boulder.ibm.com/infocenter/rsmhelp/v7r0m0/topic/com.ibm.xtools.modeler.doc/images/instantiation.gif

person toolkit    schedule 13.03.2009

Само моето мнение - ако DocumentFact наистина е Factory, бих изразходвал допълнителните три натискания на клавиши и бих го изписал. Принуждавате потребителите от вашия клас да разберат дали имате предвид „фабрика за документи“ или „факт за документ“, когато прочетат името на класа за първи път. Несигурността е ненужна, особено ако можете да пипате. Бих препоръчал да направите името по-самодокументиращо се и по-малко двусмислено.

person duffymo    schedule 13.03.2009

Съгласен съм с набора от инструменти, че фабрики->продукт е инстанцирана връзка - дескрипторът на множествеността не се прилага, освен ако фабриката също не е предназначена да поддържа препратки към обектите на продукта, в който случай така или иначе е 1:* или 1:n (мултитон)

person annakata    schedule 13.03.2009