UML初识

简介:

一.模型概念

       为了更好地了解一个过程或者事物,人们通常根据所研究的对象的某些特征(形状、结构、或行为等)建立相关的模型(Model)。模型是从一个特定视点对系统进行的抽象,它可以是实物模型,例如建筑模型、教学模型、玩具等,也可以是抽象的数字或者图示模型,例如数学公式或图形。模型建立的目的不是复制真实的原物,而是帮助人们更好地理解复杂事物的本质,反应过程或事物内部各种因素之间的相互关系。所以,模型是对复杂事物进行的有目的简化和抽象。

                                    

二.UML定义

       统一建模语言(Unified Modeling Language,UML)是由一系列标准的图形符号组成的建模语言,以图形符号为基础,来描述软件系统分析、设计和实施中的各种模型,既简单又清晰,其特点:

     (1)UML统一了各种方法对不同类型的系统、不同开发阶段以及不同内部概念的不同观点,从而有效的消除了各种建模语言之间不必要的差异。它实际上是一种通用的建模语言,可以为许多面向对象建模方法的用户广泛使用;          (2)UML建模能力比其它面向对象建模方法更强。它不仅适合于一般系统的开发,而且对并行、分布式系统的建模尤为适宜;

     (3)UML是一种建模语言,而不是一个开发过程。

       对于UML的初步认识算是一个简单的了解,下面这幅图就是在初步的学习过程中总结出来的:

                                           

 

三.UML的扩展机制

       为了表示出各种领域中的各种模型在不同时刻所有可能的细微差别,UML对特定领域建模提供了一系列的扩展机制以满足领域或开发氛围的需要。UML的扩展机制提供正价新构造块、创建新特性和详述新语义的机制。

       构造型:可以为UML增加新事物和元模型(模型是元模型的实例,元模型是定义表达模型所用语言的模型,它定义了UML模型的结构);可以扩展已存在的元模型类的语义,但是不能扩展它的结构;是一种虚拟元模型类,它是在模型里增加的而不是修改UML的预定义元模型等。

四.认识

       初次学习UML,只能说还可以接受,从总结来看,UML也是一种语言,只不过它和别的语言不同的是,用图形来描述,个人认为,更有利于我们的学习,俗话说:“一幅图胜过千言万语“,努力去做,可以学得很好!

                          

 

 

 

 

 

目录
相关文章
postcss-px-to-viewport-8-plugin 适配
postcss-px-to-viewport-8-plugin 适配
1673 0
|
安全 IDE Java
MapStruct - 原理讲解
MapStruct - 原理讲解
1437 2
MapStruct - 原理讲解
|
11月前
|
人工智能 Oracle 关系型数据库
全球CRM系统市场份额分析:领导者与挑战者
随着全球企业对CRM系统的依赖性增加,CRM市场正经历快速增长和激烈竞争。本文分析了全球CRM市场的份额,介绍了市场领导者如Salesforce、Oracle、SAP、纷享销客等,以及挑战者如HubSpot CRM、Zoho CRM等,并预测了未来市场趋势,包括云计算的普及、人工智能的融合和本土化需求的增加。
|
Dart 前端开发 Android开发
【Flutter前端技术开发专栏】Flutter中的平台特定代码实现
【4月更文挑战第30天】Flutter旨在实现跨平台移动应用开发,但有时需针对iOS或Android编写特定代码。平台通道是关键机制,允许Dart代码与原生代码交互。通过`MethodChannel`等实现跨平台通信,然后在iOS和Android上响应调用。条件编译则在编译时决定特定平台代码。本文展示了如何在Flutter中处理平台特定功能,包括示例代码和总结。
409 0
【Flutter前端技术开发专栏】Flutter中的平台特定代码实现
|
12月前
|
SQL 安全 前端开发
文件上传漏洞(二)中国菜刀
文件上传漏洞(二)中国菜刀
|
缓存 开发框架 算法
.NET操作Excel高效低内存的开源框架 - MiniExcel
.NET操作Excel高效低内存的开源框架 - MiniExcel
346 0
.NET操作Excel高效低内存的开源框架 - MiniExcel
|
存储 缓存 算法
刘志勇:微博短视频百万级高并发架构
本文来自新浪微博视频平台资深架构师刘志勇在LiveVideoStackCon 2018讲师热身分享,并由LiveVideoStack整理而成。
2872 0
|
测试技术 Shell Android开发
如何在Android手机上进行自动化测试
如何在Android手机上进行自动化测试
653 0
|
小程序 前端开发 JavaScript
小程序文章样式之代码高亮
小程序文章样式之代码高亮
651 0
小程序文章样式之代码高亮
|
机器学习/深度学习 存储 搜索推荐
干货 | 全方位深度解读 Elasticsearch 分页查询
1、关于 Elasticsearch 分页查询,这几个问题经常被问到 问题1:想请问下,一次性获取索引上的某个字段的所有值(100 万左右),除了把 max_result_window 调大 ,还有没有啥方法? 问题2:关于 es 的分页,每次拿 20 条展示在前台,然后点击下一页,在查询后面的20条数据,应该要怎么写? 问题3:From+size、Scroll、search_after 的本质区别和应用场景分别是什么?
干货 | 全方位深度解读 Elasticsearch 分页查询