我真的无法理解这两张图之间的真正区别。我的意思是这两项交易都是“状态”,但我不确定什么涉及什么?
看起来可能是这样,但区别在于,活动图描述活动,而状态图描述状态。因此,这些模型是正交的 - 您可能会想象两个状态之间存在一个活动(在转换期间发生的事情),并且您可能会说两个活动之间存在一个状态。这是一种简化,但我认为这可能足以解释差异,这主要是焦点,两个图都用于描述行为。
活动图是状态图的一种特殊情况,其中状态是活动(“函数”)。 两种状态:
动作状态:
活动状态:
例如乘坐电梯。
状态图可以包含以下状态:进入、静止、退出、到达。 这些状态转换是由活动图事件引起的。
活动图中的事件可以是:走进电梯,按下按钮到正确的楼层,走出电梯。
我想说这两个图相互重叠。
活动图用于记录单个操作/方法的逻辑、单个用例或业务流程的逻辑流。相当于结构化开发中的流程图、数据流图。 状态图描述(显示)对象的属性从一个状态变为另一个状态时的状态。状态图建模用于显示对象经历的状态序列、从一种状态转换到另一种状态的原因以及状态变化所导致的操作。
活动图是没有触发(事件)机制的功能流程,状态机由触发状态组成。