限于Git空间有限,就不往博客中插入静态图片了,但是我的微信订阅号【星球码】上是有更加完整的文章。欢迎关注~
UML介绍
统一建模语言(英语:Unified Modeling Language,缩写 UML)是非专利的第三代建模和规约语言。UML是一种开放的方法,用于说明、可视化、构建和编写一个正在开发的、面向对象的、软件密集系统的制品的开放方法。UML展现了一系列最佳工程实践,这些最佳实践在对大规模,复杂系统进行建模方面,特别是在软件架构层次已经被验证有效。(来自维基百科) UML是在(常见但不限于)数据库设计过程中,在E-R图(实体-联系图)设计后的进一步建模。
UML图
用例图、类图(今天主角)、对象图、包图、活动图、状态图、序列图(顺序图)、协作图、构件图、部署图(配置图)
笔者在大三第一学期修了UML课程,当时是第一次接触UML,其中的各种图形,线条搞得有些乱套,好在最后课程大作业设计中,小组连战2天最后利用StarUML软件设计出一个图书管理系统,并利用给出一些简单的GUI。
UML类图线条
说明:类图中方法或属性前会出现+、-、#,该符号分表表示其访问权限是public、private、protected。
推荐大家使用一款免费的在线制作各种流程图的工具——ProcessOn。包括各种价值链图、过程链图、常规流程图、组织结构图、原型设计等,当然也支持熟悉的UML。(一条五毛~)
线条表示类之间的关系,以下按照类之间关系由强到弱说明,即泛化=实现>组合>聚合>关联>依赖
泛化和实现:子类或实现下面的方法表示增加/复写/实现了哪些方法
泛化
泛化:实线空白箭头,箭头指向父类,表示继承
实现
实现:虚线空白箭头,箭头指向接口。
组合
通过属性的引用形成组合关系,例如属性集合的引用。
组合:是一种部分对整体的关系,实线,箭头指向部分,实心菱形指向整体。
聚合
通过属性引用形成的聚合关系,与关联类似,需要视具体场景。
聚合:是群体对个体的关系,空心菱形指向群体,箭头指向其构成的个体。
关联
通过属性引用形成的关联关系。
关联:表示拥有关系,即has-a关系,箭头指向拥有者;但是如果是双向关联,两个箭头可以省略,即只有一条实线。
依赖
通过方法参数的依赖关系。
依赖:表示一种协助关系,虚线,箭头指向被依赖者。
欢迎搜索关注微信订阅号:【星球码】
笔者现在的知识十分有限,文章出现错误在所难免,还请各位能够多多包涵,并不吝指出啊~