它是一种用来对真实世界物体进行建模的标准标记,这个建模的过程是开发面向对象设计方法的第一步。它的标记起源于并统一于三种面向对象设计和分析方法的标记:
Grady Booch的描写叙述对象集合和它们之间的关系的方法
James Rumbaugh的对象建模技术(OMT)
Ivar Jacobson的包含用例方法的方式
当中UML定义了5类,10种模型图
五种类图定义
用例图:从用户角度描写叙述系统功能,并指各功能的操作者。
静态图:包含类图,包图。对象图。
类图:描写叙述系统中类的静态结构
包图:是包和类组成的,表示包与包之间的关系。包图描写叙述系统的分层结构
对象图:是类图的实例
行为图:描写叙述系统动态模型和对象组成的交换关系。包含状态图和活动图
活动图:描写叙述了业务实现用例的工作流程
状态图:是描写叙述状态到状态控制流。经常使用于动态特性建模
交互图:描写叙述对象之间的交互关系
顺序图:对象之间的动态合作关系,强调对象发送消息的顺序。同一时候显示对象之间的交互
合作图:描写叙述对象之间的协助关系
实现图:
配置图:定义系统中软硬件的物理体系结构
UML提供的基本模型图:
(1)、用例图:展示系统外部的各类运行者与系统提供的各种用例之间的关系
(2)、类图:展示系统中类的静态结构(类是指具有同样属性和行为的对象。类图用来描写叙述系统中各种类之间的静态结构)
(3)、对象图:是类图的一种实例化图(对象图是对类图的一种实例化)
(4)、包图:是一种分组机制。在UML1.1版本号中,包图不再看作一种独立的模型图)
(5)、状态图:描写叙述一类对象具有的全部可能的状态及其转移关系(它展示对象所具有的全部可能的状态以及特定事件发生时状态的转移情况)
(6)、时序图/顺序图:展示对象之间的一种动态协作关系(一组对象组成。随时间推移对象之间交换消息的过程,突出时间关系)
(7)、合作图:从还有一个角度展示对象之间的动态协作关系(对象间动态协作关系,突出消息收发关系)
(8)、活动图:展示系统中各种活动的运行流程(各种活动的运行顺序、运行流程)
(9)、构件图:展示程序代码的物理结构(描写叙述程序代码的组织结构,各种构件之间的依赖关系)
(10)、配置图:展示软件在硬件环境中(特别是在分布式及网络环境中)的配置关系(系统中硬件和软件的物理配置情况和系统体系结构)
简而言之,UML它就是一种建模语言,一种建立桥梁的工具,能非常好的帮助我们捕捉对系统所发挥的想象力。并是我们可以用这些想象出来的东西来和项目和风险承担人进行交流沟通。
自己将通过书本和视频已经设计模式中的样例具体的对UML进行学习掌握。先了解UML的基础知识,深入的了解面向对象。在通过案例,学习怎样将UML实例化,用到项目开发背景中去——建立模型。
在对高级应用中UML于设计模式、嵌入式系统已经其它领域中的应用有对应的了解。
UML是一种定义良好、易于表达、功能强大且普遍适用的建模语言。
它融入了软件project领域的新思想、新方法和新技术。它的作用域不限于支持面向对象的分析与设计。还支持从需求分析開始的软件开发的全过程。
总而言之,UML是一个通用的标准建模语言。能够对不论什么具有静态结构和动态行为的系统进行建模。