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 进行数据分析(一)简单介绍 ...
随机推荐
- Win7+花生壳6.0+tomcat打做自己的web服务器(搭建自己的网站)(参考)
链接地址:http://blog.csdn.net/zhu_9527/article/details/23344623?utm_source=tuicool&utm_medium=referr ...
- AspNetCore.Hosting
Microsoft.AspNetCore.Hosting 有关Hosting的基础知识 Hosting是一个非常重要,但又很难翻译成中文的概念.翻译成:寄宿,大概能勉强地传达它的意思.我们知道,有一些 ...
- xss 跨站脚本攻击
这是一个非常简单的攻击. 两个页面如下: <form action="MyJsp.jsp" method="get"> <input type ...
- Swift - 使用CGBlendMode改变UIImage颜色
类似于PS,Swift中也可对图片UIImage进行图层混合(blending),而且提供了相当丰富的混合模式(blendMode).本文先介绍使用其中的kCGBlendModeDestination ...
- 《UNIX环境高级编程》笔记--sigaction函数
sigaction函数的功能是检查或修改指定信号相关联的处理动作,此函数取代UNIX早期版本使用的signal函数. #include<signal.h> int sigaction(in ...
- 问题:Excel在“xxx.xlsx”中发现不可读取的内容。是否恢复此工作薄的内容?【原创】
现象: 点"是(Y)" 提示信息中提到的error242440_02.xml文件: 问题重现: package poi; import java.io.FileNotFoundEx ...
- 【学习opencv第七篇】图像的阈值化
图像阈值化的基本思想是,给定一个数组和一个阈值,然后根据数组中每个元素是低于还是高于阈值而进行一些处理. cvThreshold()函数如下: double cvThreshold( CvArr* s ...
- [置顶] C++之TinyXML的使用介绍
一.引子: 最近在做GBT28181国标平台对接的工作,涉及到一些进程间消息通讯,消息体有xml格式,之前测试的时候都是拿他们当做字符串去解析,现在正儿八经地开发的时候,就想到了用xml库去解析,由于 ...
- MonkeyRunner 学习
monkeyrunner 本文档中包含 一个简单的monkeyrunner示例程序 monkeyrunner API简介 运行monkeyrunner monkeyrunner内建帮助 使用插件扩展m ...
- 《Java从入门到精通》src9-25
find . -name *.java |xargs -i sh -c "echo {};cat {}" > ../all.java[op@TIM src]$ cat al ...