UML总结

uml概述

uml形式

  • 类图
  • 时序图

类图是展示软件项目中,类与类关系的逻辑图。
时序图展示的是软件的方法调用流程。

uml类图

先从一张图片说起:

uml类型示例.png

图中一共包含五种关系

  • 泛化
  • 聚合
  • 组合
  • 依赖
  • 关联

泛化

泛化关系,有两种类型

  • 继承 上图中小汽车和suv就是继承关系,小汽车是suv的父类,对应在uml图上就是用一个空心三角箭头指向父类
  • 实现 上图中小汽车实现车这个接口,也是空心三角箭头指向接口,但线是虚线

聚合

聚合关系,表示由A组成B,但如果B不存在了,A还能独立存在,A是B的一部分。对应上图的学生和班级,由实线菱形箭头表示

组合

组合关系,表示A是B的一部分,但如果B不存在了,那么A也不再存在。对应上图的轮胎和小汽车,由实现黑色菱形箭头表示,箭头指向B。
组合关系和聚合关系非常相似,都表示A是B的一部分,但组合关系相对更加箭单一些,只要A是B的全局变量,则可以使用组合关系表达,但聚合关系稍微复杂,表示A能脱离B而单独存在,比如学生与班级,班级不存在了,学生依旧存在。

依赖

依赖关系,使用带虚线的箭头表示,表示在运行时的依赖,是一种临时性的关系。
上图中,学生就依赖于自行车。
对应软件上,本人理解的就是,A依赖B,B是A在运行时的局部变量。

关联

关联关系,使用实线箭头表示,但表示的是一种静态关系的依赖。
关联关系,在最终代码上是以成员变量形式存在的。与组合,聚合类似。

如上图所示,Adress是Customer的一个成员变量,它们之间就是关联关系,箭头处为成员变量。

uml时序图

uml时序图,用于表示软件的调用流程,使用starUml软件绘制uml时序图特别方便,标注也很清晰。
uml类图,本人倾向于使用visio 2013绘制
uml时序图具体示例请看下图

uml时序图示例.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 这里不会将UML的各种元素都提到,我只想讲讲类图中各个类之间的关系; 能看懂类图中各个类之间的线条、箭头代表什么意...
    a2bfbb8a095f阅读 1,856评论 0 1
  • “健康的人不会折磨他人,往往是那些曾受折磨的人转而成为折磨他人者。” 这是《犯罪心理》里面其中一集的一个...
    浮梦伴月阅读 1,376评论 0 0
  • 虽然我跟锁哥认识那么长时间,但在成了一对儿之前我俩单独相处的机会真的不多。 有人说,当你喜欢一个人很久很久,可能你...
    江四合阅读 326评论 0 0
  • 170315@D71.感恩冥想 佩诗 。深深的感恩慈悲伟大的佛陀,感谢感谢感谢! 。感恩格西老师用现代化的语言教授...
    佩诗阅读 78评论 0 0