帮助快速了解UML

帮助快速了解UML,uml,associations,aggregation,class-diagram,Uml,Associations,Aggregation,Class Diagram,我想知道如果我有一张只有一种票型的票,但是一种票型可以是许多票的一部分,那会是什么样 这种关系是一种聚合,其中打开的菱形位于Ticket类,还是一种箭头指向TicketType的关联?我的第一个想法是“谁在乎?”您试图为自己或其他开发人员表达两个对象之间的关系。你甚至不能清楚地说出区别;其他人能够做到这一点的可能性有多大 与open diamond的关联表示该票证拥有一个票证类型,但如果票证消失,该类型不会被删除 除了简单的关联箭头之外,我不确定这还提供了什么额外的信息 我认为重要的是不要太在意

我想知道如果我有一张只有一种票型的票,但是一种票型可以是许多票的一部分,那会是什么样

这种关系是一种聚合,其中打开的菱形位于Ticket类,还是一种箭头指向TicketType的关联?

我的第一个想法是“谁在乎?”您试图为自己或其他开发人员表达两个对象之间的关系。你甚至不能清楚地说出区别;其他人能够做到这一点的可能性有多大

与open diamond的关联表示该票证拥有一个票证类型,但如果票证消失,该类型不会被删除

除了简单的关联箭头之外,我不确定这还提供了什么额外的信息


我认为重要的是不要太在意这些事情。不要过于沉迷于UML

好的,谢谢,这是有道理的,如果一张票被删除,票的类型仍然存在,这应该是+1@duffymo。UML聚合关联造成的混乱超过了它的价值。重要的问题是基数(必须至少有一个?可以有多个?)和删除行为。我的建议总是先回答这些问题,然后坚持使用简单的二进制关联。聚合只有一个有用的属性,这只发生在递归聚合中。我认为我的回答就目前而言是相当充分的。也许你对聚合感到困惑;我不是。你当然可以自由提出自己的建议。我的目的是同意你的意见,而不是给你建议。因此是+1。建议——如果有的话——是针对OP的。也就是说,不要在聚合上挂断电话。专注于两个重要的问题(基数+删除行为)。