(原创)UML要点总结
今天我们总结要点:
我们就从这张图慢慢讲。
一。类图部分
基础:
类图→长方形表示。类名在最上栏,下面是数据,第三栏是方法。其存在两种关系:关联和泛化
属性:
全形: 可见性 名:类型 重数=默认{特性串} 例子: -名:String[]="Untlitled"{readOnly}(+ - 表示公 用和私用)
关联:是两个类之间的一条实线,方向从源类到目标类。一般来说,小事用属性,较大的类用关联
特殊的双向关联:例如人和车的关系。
操作:是类知道要去施行的动作。UML全集操作语法:
可见性 名(参数表):回送类型{特性串}例子: balanceOn (date:Date):Money(关于财务的操作)
操作和方法的区别:操作是对对象提出的事。而方法却是过程体。
泛化:一个通用的类,几个子类继承通用类。
注文与注释:可以用一条虚线将它与其注释的成分相链接。
依赖:如果改动一方,另一方也有改动。这两方就存在依赖。通则是使依赖减到极少。依赖关系越多改动的系统越复杂。
约束规则:就像如此医{}隔开,例子:{不许乱伦:夫妇一定不能是同胞兄弟}
类图基本讲完,但是注意,你可能全神贯注于结构而忽略行为,这是不对的。
下面补充类图的高级概念:
基词:通常为两个双重尖括号之间的正文。可缩写,例子《I》表示《interface》 UML接口是一个只有公用操作,不具方法体的类。
职责:在类中自己的隔间里给出注释行。
静态操作与静态属性:把施于类而不是给实例的操作。静态特征有带下划线,例子:
聚合 : 关联线 靠更大的整体一旁有个 ◇ 表示 (表明一个对象是一个更大整体的一部分,但是呈现 一 对 多的关系)
组合: 关联线 所属于整体一旁有个 实心◇ 表示 (表明一个对象属于一个更大整体,但是呈现 一 对 一的关系)
抽象类与接口:
抽象类是不能直接被初启的类,抽象操作是不具实现的操作。纯粹的说明,因而客户可定绑于抽象类。用斜线,例子: 利用标号 :{abstract}
接口亦是一个不具实现的抽象类,用前面说的基词《interface》标记
任何类都是一个接口和一个实现的结合体。
{readOnly}只读 {frozen}冻结
指引对象:例如客户 值对象: 例如日期
受限关联:是关联数组,映像等不同称呼,就相当于关联 用了一个限定符,例如订单与订单行之间。
多重分类与动态分类:分类指的是对象及其类型之间的关系。
而动态分类则允许对象在子类型以内改动类。因此,单一的静态类应该是你的默认。
关联类:使你能对关联添加属性,操作以及其他特征。其实把管理类实现成犹如它在那里是一个全类,但要提供一些方法以便获得尤其关联类连接的各个类的信息。
模板类在这里就不多说了,字面意思很明确。
二。顺序图
交互图:表各组对象如何依某种行为进行协作的模型。
优点:对图示无须解释。
交互方式:集中式控制和分布式控制
创建:画一个消息框箭头,通常来标个“new”
删除:用大写 × 指出
同步调用:实心箭头 异步调用:实线箭头
对象图:
意思明确,就是一个时间点上系统各个对象的快照。
包图:包图很简单明了在这也不详细说了。
活动图:基本上Jbpm搞定了。
对于UML:今天抽点时间阅读了下,理出这么多给大家参考。我觉得做一个项目,一个好的需求分析应该占百分之80的时间,那样不会刻意的去在demoing中重蹈覆辙。愿大家在UML总结中找到快乐
(原创)UML要点总结的更多相关文章
- UML要点总结(一)
UML中的事物 UML事物包含结构事物.行为事物.组织事物和辅助事物. 结构事物: 类.接口.用例.协作.活动类.组件和节点. 行为事物: 也称动作事物,交互和状态机. 组织事物: 也称分组事物,仅仅 ...
- UML学习网址列表
在线绘图工具ProcessOn:https://www.processon.com/support#mind-format 鲁棒图实例:http://blog.csdn.net/joeyon1985/ ...
- UML的常用关系及其符号表示
原创 UML的常用关系及其符号表示 一.实现关系 通常是一个类实现一个接口 符号表示: 二.泛化关系 通常是一个类继承另外一个类 符号表示: 三.依赖关系 通常是一个类里面的方法的参数类型是另一个类 ...
- 使用NGINX反向代理做小偷站
用Nginx的反向代理可以轻松山寨对方的网站,但是反向代理后的网站还是有对方的绝对链接时,怎么办?所以要用替换链接方法. 1 使用官方的的模块 编译参数–with-http_sub_moduleub_ ...
- UML建模的要点总结
预备知识: 一.UML的特性与发展现状 UML是一种Language(语言) UML是一种Modeling(建模)Language UML是Unified(统一)Modeling Language 1 ...
- 原创:微信小程序开发要点总结
废话不多少,下面是对我从开发微信小程序的第一步开始到发布的总结,觉得对您有帮助的话,可以赞赏下,以对我表示鼓励. 一:首先注册登录微信公众平台,这个平台很重要,以后查文档全在上面看.https://m ...
- 1uboot移植要点[原创☆☆]
----- 一:我们先来了解下实际内存: nand.nor.ram. 所以从CPU是从那部分启动的呢? 答:要看主控芯片的boot如何设置(正如分的启动方式和下载方式一样). uboot:sd卡→iR ...
- uml活动图
uml是程序员需要掌握一个重要工具,特别在研究hadoop(http://www.iigrowing.cn/hadoop)系统中,有很多相关的uml图形需要绘制,为了方便大家了解uml,在网络上找了些 ...
- 我的敏捷、需求分析、UML、软件设计电子书 - 下载(持续更新中)
我将所有我的电子书汇总在一起,方便大家下载!(持续更新) 文档保存在我的网站——软件知识原创基地上(www.umlonline.org),请放心下载. 1)软件设计是怎样炼成的?(2014-4-1 发 ...
随机推荐
- IIS上配置单页面404
问题 因为我们的应用是单页客户端应用,当用户在浏览器直接访问http://www.xxx.com/user时,刷新页面的时候,会返回404错误. 问题原因 服务端URL匹配不到相应的路由资源 解决方案 ...
- 洛谷1345 [USACO5.4]奶牛的电信Telecowmunication
原题链接 最小割点数转换成最小割边数的模板题(不过这数据好小). 每个点拆成两个点,连一条容量为\(1\)的边,原图的边容量定为\(+\infty\),然后跑最大流即可. 这里用的是\(Dinic\) ...
- 微信小程序开发 - 用户授权登陆
准备:微信开发者工具下载地址:https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html 微信小程序开发文档:htt ...
- list(zip(*querySet))使用
teacher_cls_list = obj.cls.all().values_list('id', 'caption') #list(zip(*list)),将数组中的元组中的每一项取出,添加到一起 ...
- Android使用ksoap2调用C#中的webservice实现图像上传
目录: 一. android使用ksoap2调用webservice 二. 异步调用 三. Android使用ksoap2调用C#中的webservice实现图像上传参考方法 四. 图像传输中Base ...
- 【Selenium】【BugList3】firefox与Selenium版本不兼容,报: Message: Unsupported Marionette protocol version 2, required 3
环境信息:Windows7 64位 + python 3.6.5 + selenium 3.11.0 +pyCharm 1 #coding=utf-8 2 from selenium import w ...
- Log4J日志整合及配置详解
Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使用这三个组件可以轻松 ...
- spring深入学习(五)-----spring dao、事务管理
访问数据库基本是所有java web项目必备的,不论是oracle.mysql,或者是nosql,肯定需要和数据库打交道.一开始学java的时候,肯定是以jdbc为基础,如下: private sta ...
- 走进JDK(四)------InputStream、OutputStream、Reader、Writer
InputStream InputStream是java中的输入流,下面基于java8来分析下InputStream源码 一.类定义 public abstract class InputStream ...
- 让用户输入一个日期字符串,将其转换成日期格式, 格式是(yyyy/MM/dd,yyyyMMdd,yyyy-MM-dd)中的一种, 任何一种转换成功都可以; 如果所有的都无法转换,输出日期格式非法。
第三种方法 while(true) { Date d; System.out.println("正在进行第一次匹配,请稍后~—~"); ...