事件的类图UML建模

问题描述 投票:0回答:1

在Python中有一个叫做 "events "的模块,我们可以从这个模块中导入一个叫做 "events "的对象。事件模块的URL

对象可以向对象注册一个回调方法,其他对象可以调用事件的成员。如下面所示。

from events import Events

#Implementation of Events
class EventGroup(Events):
  __events__ = ('eventOne', 'eventTwo', 'eventThree')

eventGroupOne = EventGroup()


#This class subscribes to the events
class Subscriber():
  def __init__(self):
    eventGroupOne.eventOne += self.onEventOne

  def onEventOne(self):
    print("EventOne invoked")


#This class invokes the events
class Invoker():
  def someFunction(self):
    eventGroupOne.eventOne()

我们如何在类图UML中显示EventGroup、Subscriber和Invoker这三个类之间的关系呢?

python uml object-oriented-analysis
1个回答
1
投票

如果你严格按照定义,一个类图可以只显示使用的成员。

enter image description here

在这种情况下 事件一、事件二事件三 只在对象图中可见


另一种作弊的方式是可以考虑 事件一、事件二事件三 的属性。事件组 :

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.