UML简单介绍
UML的全称是统一建模语言:Unified Modeling Language。
是用来为面向对象开发系统的产品进行说明可视化和编制文档的方法。
它是一种标准的图形化建模语言,是面向对象分析与设计的一种标准表示。
它的本意是可以使IT人员进行程序设计的建模。它不是程序设计语言,而是建模语言。
UML架构
UML由图和元模型组成。
图是UML的语法,元模型是语义,是图的意思。UML语义定义在四个抽象级:
1元元模型:组成UML最主要的元素“事物”,代表要定义的全部事物。
2元模型:是UML的基本元素。包含了面向对象和面向组件的概念。这一层的概念都是“远远模型”中的“事物”概念的实例。
3模型层:组成了UML的模型,这一层中的概念都是元模型层中概念的实例。这一层中的模型通常叫做类模型或概念模型
4用户模型:这层中的全部元素都是UML模型的样例。这层中的概念都是模型中的一个实例(通过分类),也是元模型的一个实例(通过版类化)。这一层的模型通常叫做对象模型或实例模型。
UML的模型、视图、图和系统架构建模
UML用来描写叙述模型。模型能够表示系统的结构和行为特征、以及行为和动态特征。从不同角度为系统架构建模,能够形成不同的模型图。包含
1、用例视图:强调从用户角度看到的或须要的系统功能,也被称作用户模型视图或想定视图。
包含:用例图。
2、逻辑视图:展现系统静态或结构组成特征,也称作结构模型视图或静态视图。
包含:类图、对象图。
3、并发视图:体现系统动态或行为特征,也叫做行为模型视图、过程视图、协作视图、动态视图。
包含:序列图、协作图、状态图、活动图。
4、组件视图:体现了系统实现的结构和行为特征。也叫做实现模型视图、开发视图。
包含:组件图。
5、展开视图:体现了实现环境的结构和行为特征,也叫做环境模型视图、物理视图。
包含:展开图。
模型图包含
1、事物:模型中最基本元素,具有代表性成分的抽象。
2、关系:它把事物紧密联系在一起。
3、图:事物和关系的可视化表示。
事物
构建事物
行为事物
分组事物
凝视事物
UML模型的解释部分,用来对模型中元素进行解释说明。
关系
UML中的图
UML简单介绍的更多相关文章
- UML简单介绍—类图详解
类图详解 阅读本文前请先阅读:UML简单介绍—类图这么看就懂了 1.泛化关系 一个动物类: /** * 动物类 */ public class Animal { public String name; ...
- UML简单介绍-如何看懂UML(一)
在计算复杂的数学题时,我们必然会打草稿计算 在绘画课中,我们可以素描出来看到的事物 那么在程序设计中呢? 如何描绘传达你脑海中的关于这个程序 ,设计的蓝图草稿? OOP的程序设计中,最多的自然 ...
- UML简单介绍—类图这么看就懂了
如何看懂类图 1.类图简介 描述类的内部结构和类与类之间的关系,是一种静态结构图. 在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关 ...
- UML 简单介绍
Unified modeling Language - 统一建模语言
- UML动态模型图简单介绍
UML动态模型图描述了系统动态行为的各个方面,包括用例图.序列图.协作图.活动图和状态图.下面就每种图做一个简单介绍: 用例图 用例图描述系统外部的执行者与系统提供的用例之间的某种联系.所谓用例是指对 ...
- Spring Framework简单介绍
Spring Framework 学习java编程不知不觉已经三年时间了,開始的时候,总是喜欢看着视频,然后按部就班的敲打着键盘,每当系统正常执行后.心里乐开了花.最開始的时候,所有的代 ...
- [原创]关于mybatis中一级缓存和二级缓存的简单介绍
关于mybatis中一级缓存和二级缓存的简单介绍 mybatis的一级缓存: MyBatis会在表示会话的SqlSession对象中建立一个简单的缓存,将每次查询到的结果结果缓存起来,当下次查询的时候 ...
- 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍
一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...
- 利用Python进行数据分析(4) NumPy基础: ndarray简单介绍
一.NumPy 是什么 NumPy 是 Python 科学计算的基础包,它专为进行严格的数字处理而产生.在之前的随笔里已有更加详细的介绍,这里不再赘述. 利用 Python 进行数据分析(一)简单介绍 ...
随机推荐
- Eclipse用法和技巧十九:eclipse修改workspace
工作中某一个项目的文件一般都在某一个路径,大多数人都习惯固定eclipse的workspace.不过偶尔也有点别的,比如做一个大项目中穿插着做些OJ,或者别的……这个时候当然可以选择在安装一个ecli ...
- opengl学习笔记(二)
这段时间终于接触到一点点shader了,应该说shader是非常有用的东西吧,它就是能够把一些固定渲染管线的东西改变了,按照自己的意愿进行渲染,这样的话图形就可以自由发挥了. 我也只是试验了一下sha ...
- 详解js和jquery里的this关键字
详解js和jquery里的this关键字 js中的this 我们要记住:this永远指向函数运行时所在的对象!而不是函数被创建时所在的对象.this对象是在运行时基于函数的执行环境绑定的,在全局环境中 ...
- Study notes for B-tree and R-tree
B-tree B-tree is a tree data structure that keeps data sorted and allows searches, sequential access ...
- Android ble 蓝牙4.0 总结
本文介绍Android ble 蓝牙4.0,也就是说API level >= 18,且支持蓝牙4.0的手机才可以使用,如果手机系统版本API level < 18,也是用不了蓝牙4.0的哦 ...
- nodejs之防jade
你们学习nodejs的时候,千万别用jade,我掉到它的坑里,2天没有爬出来后来用vue
- android ListView和GridView拖拽移位实现代码
关于ListView拖拽移动位置,想必大家并不陌生,比较不错的软件都用到如此功能了.如:搜狐,网易,百度等,但是相比来说还是百度的用户体验较好,不偏心了,下面看几个示例: 首先 ...
- Linux下的链接文件
整理自<鸟哥的Linux私房菜>,整理者:华科小涛http://www.cnblogs.com/hust-ghtao/ Linux中的链接文件分为两种:硬链接和软链接.软链接(symbol ...
- Q10Ⅱ 双核 - 产品中心 - 海美迪
海美迪Q系列视频文明书 Q10Ⅱ 双核 - 产品中心 - 海美迪
- 如何在SAS中重新构建限价指令簿(Limit Order Book):使用HashTable
在之前的一篇日志里(http://blog.csdn.net/u010501526/article/details/8875446),我将重新构建LOB(Limit Order Book)分为了三步 ...