UML建模语言、设计原则、设计模式( 八 )


UML建模语言、设计原则、设计模式

文章插图
带实心箭头的实线:发送消息 / 方法调用带开放式的三角箭头的虚线:返回消息 / 返回值(特别需要返回消息时就用 , 不特别需要的话 , 那么采用下面同步那种简化画法就可以了)同步消息就是消息发送完毕了 , 就返回消息(一条龙服务)当然:这也意味着阻塞和等待
UML建模语言、设计原则、设计模式

文章插图
当然:上图也可以换成前面那种用“开放式的三角箭头的虚线返回消息” , 上图这种是简写形式注意:1、图中参数哪里要是没有 , 不表示就没有消息的发送(调用方法 , 方法本身就是消息发送);2、如果没有返回值 , 即:void那也不表示没有返回消息(当进行方法调用时 , 右边已经激活 , 一样会进行阻塞 , 即:右边激活条做完该做的事情 , 照样给左边返回信息 , 告知调用者事情做完了 , 只是图中不会显示地画出来而已 , 但内部逻辑还是有的)异步消息和同步换一下 , 就是消息发送完毕了 , 返回消息可以后面给(中间可以做完另外的事情再给)同理:这就意味着非阻塞
UML建模语言、设计原则、设计模式

文章插图
注意:和同步消息画法不一样(箭头不一样) , 另外:异步中返回消息不是虚线 , 是实线(就是变成右边对象向左边对象发送消息:内容就是左边对象要的返回消息 / 返回值)持续消息时间字面意思出现的情况:有些消息需要持续很长一段时间 , 从而需要标注出来(如:大文件上传)第一种:使用带有实心箭头的倾斜的线表示(下图{}中括号中是条件控制 , 在后续会介绍)
UML建模语言、设计原则、设计模式

文章插图
第二种:表达准确的时间(在第一种的基础上 , 继续加入东西)
UML建模语言、设计原则、设计模式

文章插图
上图表示:在2h内上传文件 , 然后返回结果之后等待5min以上 , 检查上传情况重入消息A对象给B对象发消息 , 在B还未返回消息之前 , B给A发了一条消息
UML建模语言、设计原则、设计模式

文章插图
自我调用是重入消息的特例(A给B发消息 , 在B未返回之前 , A又给自己发了一条消息)所以就是自己玩自己(俗称:自wei)下面两种画法都可以(严格来讲是第一种)
UML建模语言、设计原则、设计模式

文章插图
无触发和无接收消息上面那些都是基于系统本身内部的 , 但是:有些可能需要使用到系统外部的某些东西(对象、参与者....)在技术实施开发层面一般不会见到 , 其他岗位会有
UML建模语言、设计原则、设计模式

文章插图
对象的创建字面意思被创建对象会比生命线矮一截(就是下图中右边比左边矮一点)
UML建模语言、设计原则、设计模式

文章插图

经验总结扩展阅读