Thinking in UML-1-为什么需要UML
1 从面向过程到面向对象
面向过程认为我们的世界是由一个个相互关联的小系统组成。逻辑严密、环环相扣、井然有序。但是我们这个世界从来不是一成不变的。世界的复杂性和频繁变革不是面向过程可以轻易应付应付的。
面向过程的困难本质上是因为过程的方法将世界看做是过程化的,一个一个紧密联系的小系统,构成这个系统的各个部分有着密不可分的联系。
面向对象方法是将世界看做一个一个独立的对象,他们相互之间并无联系。只有当外部力量的驱动下,才会传递信息。这些交互构成了这些对象之间的“过程”。
打个比方:如果一次成型一辆汽车就太过困然,我们可以把汽车分解为去多不同的零件,每个零件只和有限的零件产生联系,然后用特定的方式把它们组合起来。
在这个过程中,我们最重要的是对零件的抽象和对接口的描述。在面向对象的方法中这个也是最重要的。
抽象层次:一辆汽车可以抽象为发动机+轮子+车身。 发动机由可以抽象为汽缸+活塞等零件。
面向对象的方法根本的不同就是不再把世界看做一个紧密联系的系统,而是看做一些相互独立的离散的小零件。这些零件依照某种特定的规则组合起来,完成特定的功能。
UML代表了面向对象分析设计方法。
2 UML带来了什么
UML是什么:UML是一种建模语言。它定义了:
- 建立模型所需要的、表达某种特定含义的基本元素----元模型
- 元模型之间关系的规则
- 可视化: 就是可图形化, 一图胜千言
建模是指通过通过对客观事物建立起一种抽象的方法,用来表征事物并获得对事物本身的理解,在把这种理解概念化,并将这些逻辑概念组织起来,形成对所观察的内部结构和工作原理的便于理解的表达。
一个完整的建模过程可以划分为以下几个步奏:
- 从现实世界到业务模型
- 从业务模型到概念模型
- 从概念模型到设计模型
建模是一个抽象的过程。 我们现在来抽象世界。我们世界的本质是由人、事、物和规则组成。
在uml中,人成为参与者,事成为了用例, 看下如图所示模型演化图:

3 总结
面向对象方法是一种更高抽象层次的方法。而uml给面向对象的方法建模以一种图形化的表达和描述。
Thinking in UML-1-为什么需要UML的更多相关文章
- UML系列04之 UML时序图
概要 本章对UML的时序图进行介绍,主要内容包括:时序图介绍时序图组成 转载请注明出处:http://www.cnblogs.com/skywang12345/p/3523355.html 时序图介绍 ...
- UML系列03之 UML类图(二)
概要 在"UML系列02之 UML类图(一) "中介绍了类图的基本构成--类的UML表示方法.本文是接着前文,继续对"UML的类图"中几种关系进行介绍.介绍的主 ...
- UML系列02之 UML类图(一)
概要 本章介绍类图中类的UML表示方法.内容包括:类图介绍实体类的UML表示抽象类和接口的UML表示 转载请注明出处:http://www.cnblogs.com/skywang12345/p/352 ...
- 【UML 建模】在线UML建模工具 ProcessOn 使用详解
总结 : -- 推荐理由 : 最近从 Windows 操作系统 转到 MAC 上, 正在看设计模式 和 重构, 找不到好用的 UML 工具, 因此在网上找了一款可以在线使用的 UML 工具, 用起来发 ...
- 【UML】NO.54.EBook.6.UML.2.002-【Thinking In UML 大象 第二版】- UML 核心元素
1.0.0 Summary Tittle:[UML]NO.54.EBook.6.UML.2.002-[Thinking In UML 大象 第二版]- UML 核心元素 Style:DesignPat ...
- 【UML】NO.53.EBook.6.UML.2.001-【Thinking In UML 大象 第二版】- 概述
1.0.0 Summary Tittle:[UML]NO.53.EBook.6.UML.2.001-[Thinking In UML 大象 第二版]- 概述 Style:DesignPattern S ...
- 【UML】-NO.40.UML.1.UML.1.001-【UML】- uml
1.0.0 Summary Tittle:[UML]-NO.40.UML.1.UML.1.001-[UML]- uml Style:DesignPattern Series:DesignPattern ...
- [转]解析UML建模语言中的UML图分类、 UML各种图形及作用
本文向大家介绍一下UML图分类,作为一种建模语言,UML的定义包括UML语义和UML表示法两个部分. UML图大致可分为五类,共有九种图形. AD: 本文和大家重点讨论一下UML图分类,标准建模语言U ...
- 【UML 建模】在线UML建模工具 ProcessOn 使用具体解释
总结 : -- 推荐理由 : 近期从 Windows 操作系统 转到 MAC 上, 正在看设计模式 和 重构, 找不到好用的 UML 工具, 因此在网上找了一款能够在线使用的 UML 工具, 用起来发 ...
- 【UML】如何记忆UML类图的画法
前言 UML类图形象反映系统类之间的关系,大家非常常用.小弟不才,偶尔使用,往往每次使用都得查询各种关系的表示方式.终于,这次认真看了几遍,打算记起来. 注意 记忆方法只是本人联想,用于加强记忆.与该 ...
随机推荐
- asp.net mvc本地程序集和GAC的程序集冲突解决方法
一个从asp.net mvc 3升级到asp.net mvc 4的项目发生了如下错误: [A]System.Web.WebPages.Razor.Configuration.HostSection c ...
- JSch - Java实现的SFTP(文件上传详解篇)
JSch是Java Secure Channel的缩写.JSch是一个SSH2的纯Java实现.它允许你连接到一个SSH服务器,并且可以使用端口转发,X11转发,文件传输等,当然你也可以集成它的功能到 ...
- 读Thinking in java 4
读tij4 ,生活中还是杂事太多,有时候就忘了最初买书来读的初衷,也没了刚开始激情了,为了督促下自己,好好看完一本书,不妨来写写读书笔记吧.
- Java面向对象编程
面向对象的软件开发: 面向对象的开发把软件系统看成各种对象的集合,对象就是最小的子系统,一组相关的对象能够组合成复杂的子系统. 面向对象的开发方法具有以下优点: 1.把软件系统看成是各种对象的集合,更 ...
- Android官方提供的下拉刷新控件——SwipeRefreshLayout
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android=&q ...
- #1045 - Access denied for user 'root'@'localhost' (using password: NO)
解决办法 打开 phpmyadmin里的config.inc.php文件 $cfg['Servers'][$i][ 'host'] = 'localhost';$cfg['Servers'][$i][ ...
- HDU1063 大数 java
Exponentiation Time Limit: 2000/500 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Tot ...
- BizTalk开发系列(三十一)配置和使用HTTP适配器
BizTalk的主机分别进程内主机和独立主机.但由于一直使用的是进程内主机,对于独立主机的认识比较模糊,前不久在做一个BizTalk的项目的时 候,个别系统使用HTTP的方式发布Txt之类的文本的.刚 ...
- graph | hungary
匈牙利算法,求二分图最大匹配. 若P是图G中一条连通两个未匹配顶点的路径,并且属于M的边和不属于M的边(即已匹配和待匹配的边)在P上交替出现,则称P为相对于M的一条增广路径.(M为一个匹配) 由增广路 ...
- loadrunner获取返回值为乱码
找了很多方法,utf-8也设置了,还是不行,只有有转码方法了 web_reg_save_param("res2", "LB=\"msg\":\&quo ...