使用UML类图与时序图为Vue应用建模的相关疑问
问题解答
1. 类图关联关系问题
可以按你当前的蓝色组合箭头画法标注关联。UML组合关系的核心判定规则是部分实例的生命周期与整体实例完全绑定,此处FormItem实例销毁时持有的对应criterium引用会同步释放,BaseRadio实例销毁时持有的option引用也会同步失效,完全符合组合关系的定义。哪怕数据是通过props从父组件逐层传递的,只要子组件对这份数据有唯一的实例绑定关系,就可以用组合箭头表示,当前画法没有问题。
2. 时序图跨组件消息类型问题
当前将自定义事件、prop传递画为同步消息的处理不正确。同步消息的核心特征是发送方会阻塞等待接收方处理完成后才继续执行后续逻辑,而Vue的自定义事件、prop更新都属于异步队列机制,不会阻塞当前执行栈,该特征和消息是否有返回值无关。你应该将这类跨组件通信内容画为半箭头的异步消息,更符合Vue的实际运行逻辑。
3. 自反消息的使用问题
- 组件内部调用的
setOption(option):void函数画为自反消息是正确的,这是UML时序图中表示对象内部方法调用的标准画法。 - 你对计算属性的判断正确:计算属性本质是带缓存的属性访问器,不属于主动调用的方法,不需要绘制为自反消息。如果需要体现计算属性的依赖关系,可以在对应消息旁加注释标注,或者将计算结果作为后续消息的参数标注即可,不需要单独绘制自反消息。
内容的提问来源于stack exchange,提问作者axylotl
相关产品推荐
相关产品推荐

