UML设计:类图说明及一步一步制作UML类图

什么是类图

UML类图是用来描述一个系统的静态结构。它既可以用于一般概念建模也可以用于细节建模。类包含了数据和行为,是面向对象的重要组成部分,它是具有相同属性、操作、关系的对象集合的总称。

UML类图也可以用于数据建模。它可以用来描述应用程序内部或和其他用户之间的对象和信息结构。在UML中问题域终要被逐步转化,通过类来建模,通过编程语言构建这些类。类加上他们之间的关系就构成了类图,类图中还可以包含接口、包等元素,也可以包括对象、链等实例。

类图中的符号

class

类通过一个矩形表示,被两条直线分隔成3个部分,如图所示:

Attribute(属性)

类的属性部分在单独的一行中列出了该类的每个属性。属性部分是可选的,但是当使用时,它包含以列表格式显示的类的每个属性。每一行使用格式:名称:属性类型(例如名字:字符型)。

操作(Operation)

操作记录在类图矩形的底部区域,这也是可选的。像属性一样,类的操作以列表格式显示,每个操作都在自己的行上。使用以下符号记录操作:名称(参数列表):返回值的类型

(例如设置名称(名称参数) :void)。

关系(relationship)

关联

关联指定了两个类之间的"整体/部分”关系。在关联关系中,整个类的对象将部分类的对象作为实例数据。在类图中,关联关系呈现为有向实线。

单向关联:

在单向关联中,两个类是相关的,但是只有一个类知道这种关系存在。 单向关联被绘制为实线,带有指向已知类的开放箭头。

双向(标准)关联

是两个类之间的链接。关联总是被认为是双向的;这意味着两个类都知道彼此和它们的关系,除非您将关联定义为其他类型。
两个类之间的实线表示双向关联。

多样性

将多重符号放在关联的末尾。这些符号表示一个类与另一个类的一个实例链接的实例数量。

例如,一家公司将有一名或多名员工,但每个员工只为一家公司工作。

关系有如下几种:

关系 说明
1 1对1
0..1 0个或者1个
* 多个
0..* 0个或者多个
1..* 1个或者多个

可见性

用于表示谁可以访问由+、-、#和~表示的类中包含的信息,如图所示:

超类

超类和更具体的事物(称为子类)之间的关系。
泛化有时被称为“是一种”关系,是通过继承过程建立起来的。
在类图中,一般化关系呈现为带有指向父类的大开放箭头的实线。

抽象类和方法

在继承层次结构中,子类实现特定的细节,而父类定义其子类的框架。父类还为将由其子类实现的常用方法提供模板。

抽象类的名称通常用斜体显示;或者,可以使用文本注释显示抽象类,也称为模板{abstract},位于它的名称之后或之下。
抽象方法是一种没有实现的方法。为了创建一个抽象方法,创建一个操作并使其倾斜。

实现

实现是两件事之间的关系,其中一件事(接口)指定一个契约,另一件事(类)通过实现该契约中指定的操作来保证执行该契约。
在类图中,实现关系呈现为虚线,带有指向接口的开放箭头。

依赖

依赖性表示两个类之间的“使用”关系。
在类图中,依赖关系呈现为虚线。
如果 A类 “使用” B类,则下列一项或多项陈述通常成立:

  • 在类A的一个或多个方法中,类B被用作局部变量的类型
  • B类用作A类一个或多个方法的参数类型
  • 类B用作 类A 的一个或多个方法的返回类型
  • 一个或多个A类方法调用一个或多个B类方法

类图图的制作

创建类图方式有很多,若选择在线绘制类图图,可以使用visio 或者 使用在线制图网站: freedgo Design。 freedgo Design 其访问地址为: https://www.freedgo.com 。freedgo design 在线制图网站是一款多类型的图形图表设计软件,软件内容自带丰富的几何图形模板,UML 用例图、状态图、类图、活动图、序列图、协作图等等。

在具体的类图图中需要把业务逻辑分解成更小、更具体的步骤。 然后,考虑类图中任何可能的异常,如果是,为备选路径添加决策节点。
继续重复这个过程,直到你达到了每个人都能完全理解的简单步骤。

现在,一起开看如何使用Freedgo Design制好看的类图。

步骤一:

访问 https://www.freedgo.com ,先注册一个用户,注册成功后,登录到 首页

步骤二:

访问 https://www.freedgo.com/draw_index.html ,进入制图页面,或者从 首页 页面 顶部菜单点击开始制作

进入制图页面后 点击 文件 -> 从类型中新建 -> 软件设计 -> 类图

或者点击图例,在图例中找到 软件设计 -> 类图,选择一个类似的图例进行改动

步骤三:

从左侧符号栏拖拽合适的几何图形至画布,松手后,图形就被固定画布上,双击几何图形,还可输入文字。当鼠标放置在图形上时,
图形四周会显示“小三角形”,是为了方便用户点击后能够快速生成新的图形。

步骤四:

软件提供多种连接样式,在该类图中,可以选择关联连接线。在连接线上,还可以输入文字做进一步的说明。

步骤五:

类图图制作工具拥有一套功能丰富的样式,用户可以对封闭图形进行单色填充、渐变填充、文本大小位置颜色调整。经过图案填充的类图图,颜值提升了不少。

步骤六:

按照绘图要求,一步一步的地完成类图绘制。最终完成了整幅的绘制任务。

更多基本类图的例子 请参考 [图例] (https://www.freedgo.com/showcase.html) 或者直接访问 : https://www.freedgo.com/showcase.html

原文地址:https://blog.51cto.com/486221/2402339

时间: 2024-10-15 16:11:54

UML设计:类图说明及一步一步制作UML类图的相关文章

【Unity3D实战】零基础一步一步教你制作跑酷类游戏(填坑完整版)

在两个月前曾写了一篇<[Unity3D实战]零基础一步一步教你制作跑酷类游戏(1)>,里面一步一步演示了制作跑酷类游戏,然而由于时间原因,只写到了让角色往前移动为止.这个坑一直没有时间去填,(虽然也没多少人看啦),今天刚好有时间完成了一个跑酷类游戏的Demo.放上来给有兴趣的朋友看看. Demo源码及对应素材下载:链接:http://pan.baidu.com/s/1i4QkkuD 密码:p04w 游戏简要说明 游戏类型:跑酷类游戏(Demo,非完整游戏) 操作方式:左右方向键(可自己移植到手

Arcgis由离散点制作核密度图

问题:由离散点生成核密度图 解决思路:使用ArcToolbox工具制作核密度图 解决方法: (1)ArcToolbox-->Spatial Analyst 工具-->密度分析-->核密度分析. (2)输入各项参数.注意:Population字段可为None:实验中设的输出像元大小0.0001:搜索半径需要进行尝试设定一个合适的值以实现更好的效果,实验中设置为0.01 完成即可查看结果

怎么制作GIF动图,制作GIF动图攻略

网络聊天中,使用GIF动图已经成为一种常态.很多人都习惯了使用GIF动图来表达自己的心情,那么你们有想过你们手中的GIF动图是怎么制作的吗?我想肯定都是想过的.其实制作GIF并不困难,有款迅捷GIF制作工具请添加链接描述便能够轻松驾驭了.下面小编就来分享下制作GIF动图的方法,教大家如何制作GIF动图. 迅捷GIF制作工具http://www.xunjieshipin.com/download-gifmaker 一.现在很流行将电视剧或者综艺.动漫等等视频上面的某一搞笑的画面截取下来制作成动态表

PowerDesigner(八)-面向对象模型(用例图,序列图,类图,生成Java源代码及Java源代码生成类图)(转)

面向对象模型 面向对象模型是利用UML(统一建模语言)的图形来描述系统结构的模型,它从不同角度实现系统的工作状态.这些图形有助于用户,管理人员,系统分析人员,开发人员,测试人员和其他人员之间进行信息交流.这里主要介绍用例图,序列图和类图.   1.面向对象模型OOM 面向对象模型是利用UML的图形描述系统结构的模型,可以利用PowerDesigner的面向对象模型进行创建.PowerDesigner支持UML的下列图形. 用例图(User Case Diagram):通常用来定义系统的高层次草图

第三视角团队:项目UML设计(团队)

项目UML设计(团队) 团队信息 团队名:第三视角 各成员学号及姓名 姓名 学号 张扬(组长) 031602345 肖地秀 031602336 朱文婧 031602148 洪泽波 031602312 郑愈明 031602147 陈加伟 031602631 苏韫月 031602204 郭俊彦 031602213 李翔 031602418 王全炯 031602331 组长作业博客链接 本次作业链接 团队分工(10分) 成员负责事务 | | | | | ---- | ---- | ---- | | |

一步一步搭建开发框架(三)基类基接口

1,AdoNetDal和EfDal都实现IDal这个接口,公共的方法写到接口中,接口中的代码! 1 namespace PCITC.OA.IDal 2 { 3 public interface IUserInforDal 4 { 5 UserInfor Add(UserInfor userInfor); 6 7 bool Update(UserInfor userInfor); 8 9 bool Delete(UserInfor userInfor); 10 11 int Delete(para

WCF 一步一步 发布 WCF服务 到 IIS (图)

WCF 一步一步 发布 WCF服务 到 IIS (图) 使用VS自带的WCFSVCHost(WCF服务主机)发布WCF服务,时刻开发人员测试使用. 下面我们来看一下如何在IIS中部发布一个WCF服务. 环境是VS 2008 (公司电脑没有安装VS2010)^_^ 我们从头开始,不写代码,完全的配置,会收获不小. 新建一个WCF 服务库 建立一个WCF服务应用程序 结果如下 删除掉WCF程序中不需要的默认文件,如下图   为WcfService1项目添加WcfServiceLibrary1的引用,

《攻城Online》开发前期:UML设计架构

<攻城Online>,以下简称“攻城”,是基于Unity3D引擎开发的一款MMORPG端游. “攻城”开发采用C/S架构,其中服务端使用了Photon引擎来简化开发流程.Photon引擎底层是C++,采用多线程并发处理客户端连接,且游戏逻辑采用C#语言编写.目前来说,团队对服务端开发仍是一张白纸,因而认定直接用现成服务端框架是唯一的出路.而相比较SmartFoxServer.KBEngine来说,因为其实现语言的原因,以致Photon成为不二的选择. 废话少说,先贴上初步的UML类图框架. 由

如何一步一步用DDD设计一个电商网站(六)—— 给购物车加点料,集成售价上下文

阅读目录 前言 如何在一个项目中实现多个上下文的业务 售价上下文与购买上下文的集成 结语 一.前言 前几篇已经实现了一个最简单的购买过程,这次开始往这个过程中增加一些东西.比如促销.会员价等,在我们的第一篇文章(如何一步一步用DDD设计一个电商网站(一)—— 先理解核心概念)中规划的上下文映射图可以看到,这些都属于一个独立的上下文(售价上下文). 二.如何在一个项目中实现多个上下文的业务 一般情况下,为了更好的分而治之,把不同的上下文作为单独的service,然后通过rpc框架(如WCF)来对其