有一次我在做这个课程培训时,有位同学跟我说,他曾经听过不少UML培训,以为UML培训就是这个样子,没想到我的课程让他大开眼界,重新认识了UML!他对课程的赞美让我非常高兴,但目前业内UML面临着比较普遍的信任危机,批评UML、认为UML用处不大的文章随处可见,这让我十分担忧。

我读书时从来没有听说过 UML这回事,仅是在工作后才开始学习。很多书籍将UML讲得过于复杂、过于理论化,其实完全没有必要,学以致用才是学习的最终目的。在实际工作中我不断地体会UML的魅力,逐步形成了自己的一套理解,我在大量的项目中使用UML了,并且将我的经验传授给同事。UML在很多公司没有能用好,在业内有严重的信任危机,我觉得是以下的原因导致的:

原因一:合适的UML学习资料不多。
市面上的资料、书籍主要是两类,一类是国外骨灰级高手写的,一类是国内的UML理论家写的。
国外高手的书籍,很多写得过于高深抽象,又加上翻译后影响了原意,这些书籍一般都难以让我们理解。
国内理论家写的书籍,内容确实很丰富,部分书让人读了还会觉得很兴奋,<SPAN class=t_tag onclick=tagshow(event) href="tag.php?name=%CE%CA%CC%E2">问题</SPAN>是没有能处于“学以致用”的目标来编写,我甚至怀疑有些作者基本上没有实际在项目中使用UML的经验。
UML大师 Martin Fowler 编著的《UML Distilled》(中文译名:UML精炼),我觉得是难得的一本UML好书,推荐大家阅读。

原因二:有实战经验的UML讲师太少。
不少UML讲师是来自某某大学、学院或者是研究所的,很少见到来自<SPAN class=t_tag onclick=tagshow(event) href="tag.php?name=%C6%F3%D2%B5">企业</SPAN>的。如果不能处于实战的角度讲授UML,UML的威力就会大打折扣,这样的培训训练出来的学生,实战水平不会得到很大提升。

原因三:对学习UML普遍存在严重误解。
我觉得学习UML最难的应该是转变思维习惯、提升思维水平,而不是UML的语法。UML中的每种符号,都有很特定的含义,你需要在实际案例中去体会,而不是只听理论讲解。不要指望学习了UML你就会马上提高了一个档次,如果你的思维方法不得到提升,你只是UML理论家,你可能不学UML会更好,这些UML理论反而会在实际工作中限制你的发挥。


UML知识扫盲

UML这三个字母的全称乃Unified Modeling Language,直接翻译就是统一建模语言,简单地说就是一种有特殊用途的语言。你可能会说,语什么言,一堆图形,还说是语言?此言差矣,咱们的文字还不是从图形(象形文字)开始的嘛,语言是包括文字和图形的。其实有很多内容文字是无法表达的,你见过建筑设计图纸吗?里面还不是很多图形,光用文字能表达清楚建筑设计吗?在建筑界,有一套标准来描述设计,同样道理,在软件开发界,我们也需要一套标准来帮助我们做好软件开发的工作。UML就是其中的一种标准,注意这可不是唯一标准,只是UML是大家比较推崇的一种标准而已,说不定以后有一个更好的标准可能会取代她呢!UML并不是官方的标准,也没有法律规定你在软件开发中一定要用UML,不能用其它的,我们的目标就是善用包括UML在内的各种标准,来提高我们软件开发的水平。

UML由 1.0版<SPAN class=t_tag onclick=tagshow(event) href="tag.php?name=%B7%A2%D5%B9">发展</SPAN>到1.1、1.2、...,到现在的2.0、2.x,本论坛将会以2.0版本为基础开展讨论。网络上、书籍、还有各种UML工具软件,各自基于的UML版本可能会不一样,大家在学习过程中可能会有一些困惑,不过没关系,本课程在某些关键地方会描述1.x与2.0的差异的。

UML有很多种图,大体可以分为两类:
1.结构型的图(Structure Diagram)
类图(Class Diagram)
对象图(Object Diagram)
组件图(Component Diagram)
部署图(Deployment Diagram)
包图(Package Diagram)
2.行为型的图(Behavior Diagram)
活动图(Activity Diagram)
用例图(Use Case Diagram)
状态机图(State Machine Diagram)
序列图(Sequence Diagram)
协作图(Communication Diagram)
时序图(Timing Diagram)

注:UML图的中文名字,因为翻译的原因可能会有所不一样,大家要留意看英文名字噢!

在我们软件设计时,我们需要考虑需要那些类、哪些组件、系统最后怎样部署等,这些内容可以看成是“静态”的,我们可以利用UML的结构型的图来设计。
同时,我们也需要考虑软件如何和用户交互,类、组件、模块之间如何联系等“动态”内容,我们可以利用行为型的图来设计。
当然所谓“静态”和“动态”不是绝对的,对UML还不是很熟悉的朋友,先大致这样了解便可。"/>
有一次我在做这个课程培训时,有位同学跟我说,他曾经听过不少UML培训,以为UML培训就是这个样子,没想到我的课程让他大开眼界,重新认识了UML!他对课程的赞美让我非常高兴,但目前业内UML面临着比较普遍的信任危机,批评UML、认为UML用处不大的文章随处可见,这让我十分担忧。

我读书时从来没有听说过 UML这回事,仅是在工作后才开始学习。很多书籍将UML讲得过于复杂、过于理论化,其实完全没有必要,学以致用才是学习的最终目的。在实际工作中我不断地体会UML的魅力,逐步形成了自己的一套理解,我在大量的项目中使用UML了,并且将我的经验传授给同事。UML在很多公司没有能用好,在业内有严重的信任危机,我觉得是以下的原因导致的:

原因一:合适的UML学习资料不多。
市面上的资料、书籍主要是两类,一类是国外骨灰级高手写的,一类是国内的UML理论家写的。
国外高手的书籍,很多写得过于高深抽象,又加上翻译后影响了原意,这些书籍一般都难以让我们理解。
国内理论家写的书籍,内容确实很丰富,部分书让人读了还会觉得很兴奋,<SPAN class=t_tag onclick=tagshow(event) href="tag.php?name=%CE%CA%CC%E2">问题</SPAN>是没有能处于“学以致用”的目标来编写,我甚至怀疑有些作者基本上没有实际在项目中使用UML的经验。
UML大师 Martin Fowler 编著的《UML Distilled》(中文译名:UML精炼),我觉得是难得的一本UML好书,推荐大家阅读。

原因二:有实战经验的UML讲师太少。
不少UML讲师是来自某某大学、学院或者是研究所的,很少见到来自<SPAN class=t_tag onclick=tagshow(event) href="tag.php?name=%C6%F3%D2%B5">企业</SPAN>的。如果不能处于实战的角度讲授UML,UML的威力就会大打折扣,这样的培训训练出来的学生,实战水平不会得到很大提升。

原因三:对学习UML普遍存在严重误解。
我觉得学习UML最难的应该是转变思维习惯、提升思维水平,而不是UML的语法。UML中的每种符号,都有很特定的含义,你需要在实际案例中去体会,而不是只听理论讲解。不要指望学习了UML你就会马上提高了一个档次,如果你的思维方法不得到提升,你只是UML理论家,你可能不学UML会更好,这些UML理论反而会在实际工作中限制你的发挥。


UML知识扫盲

UML这三个字母的全称乃Unified Modeling Language,直接翻译就是统一建模语言,简单地说就是一种有特殊用途的语言。你可能会说,语什么言,一堆图形,还说是语言?此言差矣,咱们的文字还不是从图形(象形文字)开始的嘛,语言是包括文字和图形的。其实有很多内容文字是无法表达的,你见过建筑设计图纸吗?里面还不是很多图形,光用文字能表达清楚建筑设计吗?在建筑界,有一套标准来描述设计,同样道理,在软件开发界,我们也需要一套标准来帮助我们做好软件开发的工作。UML就是其中的一种标准,注意这可不是唯一标准,只是UML是大家比较推崇的一种标准而已,说不定以后有一个更好的标准可能会取代她呢!UML并不是官方的标准,也没有法律规定你在软件开发中一定要用UML,不能用其它的,我们的目标就是善用包括UML在内的各种标准,来提高我们软件开发的水平。

UML由 1.0版<SPAN class=t_tag onclick=tagshow(event) href="tag.php?name=%B7%A2%D5%B9">发展</SPAN>到1.1、1.2、...,到现在的2.0、2.x,本论坛将会以2.0版本为基础开展讨论。网络上、书籍、还有各种UML工具软件,各自基于的UML版本可能会不一样,大家在学习过程中可能会有一些困惑,不过没关系,本课程在某些关键地方会描述1.x与2.0的差异的。

UML有很多种图,大体可以分为两类:
1.结构型的图(Structure Diagram)
类图(Class Diagram)
对象图(Object Diagram)
组件图(Component Diagram)
部署图(Deployment Diagram)
包图(Package Diagram)
2.行为型的图(Behavior Diagram)
活动图(Activity Diagram)
用例图(Use Case Diagram)
状态机图(State Machine Diagram)
序列图(Sequence Diagram)
协作图(Communication Diagram)
时序图(Timing Diagram)

注:UML图的中文名字,因为翻译的原因可能会有所不一样,大家要留意看英文名字噢!

在我们软件设计时,我们需要考虑需要那些类、哪些组件、系统最后怎样部署等,这些内容可以看成是“静态”的,我们可以利用UML的结构型的图来设计。
同时,我们也需要考虑软件如何和用户交互,类、组件、模块之间如何联系等“动态”内容,我们可以利用行为型的图来设计。
当然所谓“静态”和“动态”不是绝对的,对UML还不是很熟悉的朋友,先大致这样了解便可。"/>

大话UML

1 楼
UML的信任危机 有一次我在做这个课程培训时,有位同学跟我说,他曾经听过不少UML培训,以为UML培训就是这个样子,没想到我的课程让他大开眼界,重新认识了UML!他对课程的赞美让我非常高兴,但目前业内UML面临着比较普遍的信任危机,批评UML、认为UML用处不大的文章随处可见,这让我十分担忧。 我读书时从来没有听说过 UML这回事,仅是在工作后才开始学习。很多书籍将UML讲得过于复杂、过于理论化,其实完全没有必要,学以致用才是学习的最终目的。在实际工作中我不断地体会UML的魅力,逐步形成了自己的一套理解,我在大量的项目中使用UML了,并且将我的经验传授给同事。UML在很多公司没有能用好,在业内有严重的信任危机,我觉得是以下的原因导致的: 原因一:合适的UML学习资料不多。 市面上的资料、书籍主要是两类,一类是国外骨灰级高手写的,一类是国内的UML理论家写的。 国外高手的书籍,很多写得过于高深抽象,又加上翻译后影响了原意,这些书籍一般都难以让我们理解。 国内理论家写的书籍,内容确实很丰富,部分书让人读了还会觉得很兴奋,问题是没有能处于“学以致用”的目标来编写,我甚至怀疑有些作者基本上没有实际在项目中使用UML的经验。 UML大师 Martin Fowler 编著的《UML Distilled》(中文译名:UML精炼),我觉得是难得的一本UML好书,推荐大家阅读。 原因二:有实战经验的UML讲师太少。 不少UML讲师是来自某某大学、学院或者是研究所的,很少见到来自企业的。如果不能处于实战的角度讲授UML,UML的威力就会大打折扣,这样的培训训练出来的学生,实战水平不会得到很大提升。 原因三:对学习UML普遍存在严重误解。 我觉得学习UML最难的应该是转变思维习惯、提升思维水平,而不是UML的语法。UML中的每种符号,都有很特定的含义,你需要在实际案例中去体会,而不是只听理论讲解。不要指望学习了UML你就会马上提高了一个档次,如果你的思维方法不得到提升,你只是UML理论家,你可能不学UML会更好,这些UML理论反而会在实际工作中限制你的发挥。 UML知识扫盲 UML这三个字母的全称乃Unified Modeling Language,直接翻译就是统一建模语言,简单地说就是一种有特殊用途的语言。你可能会说,语什么言,一堆图形,还说是语言?此言差矣,咱们的文字还不是从图形(象形文字)开始的嘛,语言是包括文字和图形的。其实有很多内容文字是无法表达的,你见过建筑设计图纸吗?里面还不是很多图形,光用文字能表达清楚建筑设计吗?在建筑界,有一套标准来描述设计,同样道理,在软件开发界,我们也需要一套标准来帮助我们做好软件开发的工作。UML就是其中的一种标准,注意这可不是唯一标准,只是UML是大家比较推崇的一种标准而已,说不定以后有一个更好的标准可能会取代她呢!UML并不是官方的标准,也没有法律规定你在软件开发中一定要用UML,不能用其它的,我们的目标就是善用包括UML在内的各种标准,来提高我们软件开发的水平。 UML由 1.0版发展到1.1、1.2、...,到现在的2.0、2.x,本论坛将会以2.0版本为基础开展讨论。网络上、书籍、还有各种UML工具软件,各自基于的UML版本可能会不一样,大家在学习过程中可能会有一些困惑,不过没关系,本课程在某些关键地方会描述1.x与2.0的差异的。 UML有很多种图,大体可以分为两类: 1.结构型的图(Structure Diagram) 类图(Class Diagram) 对象图(Object Diagram) 组件图(Component Diagram) 部署图(Deployment Diagram) 包图(Package Diagram) 2.行为型的图(Behavior Diagram) 活动图(Activity Diagram) 用例图(Use Case Diagram) 状态机图(State Machine Diagram) 序列图(Sequence Diagram) 协作图(Communication Diagram) 时序图(Timing Diagram) 注:UML图的中文名字,因为翻译的原因可能会有所不一样,大家要留意看英文名字噢! 在我们软件设计时,我们需要考虑需要那些类、哪些组件、系统最后怎样部署等,这些内容可以看成是“静态”的,我们可以利用UML的结构型的图来设计。 同时,我们也需要考虑软件如何和用户交互,类、组件、模块之间如何联系等“动态”内容,我们可以利用行为型的图来设计。 当然所谓“静态”和“动态”不是绝对的,对UML还不是很熟悉的朋友,先大致这样了解便可。
2010-11-22 21:29:25
zzw294225677
2 楼
我是从《大道至简:软件工程实践者的思想》这本书开始的,这本书以诙谐幽默有浅显易懂的方式讲出了UML的本质。
2010-11-22 21:34:21
ty803
3 楼
uml 这个是什么 还是不太明白
2010-11-24 17:52:49
zzw294225677
4 楼
统一建模语言,软件开发的不同阶段,分析、设计、架构、开发人员之间交流用的
2010-11-24 19:38:28
81289025
5 楼
UML是一门深奥的学问。。
2010-11-25 22:21:51
648505976
6 楼
我不懂这个
2010-11-28 16:28:37
yj1993321
7 楼
看了好半天,还是没有看懂,这到底是什么?
2010-11-29 21:02:45
ty805
8 楼
2010-12-23 08:24:26
794657783
9 楼
《大道至简:软件工程实践者的思想》这本书
2010-12-24 13:30:08
ya81289025
10 楼
有实战经验的UML讲师太少
2010-12-24 20:38:36
ya52340761
11 楼
对学习UML普遍存在严重误解。
2010-12-24 20:39:55
weiguo21
12 楼
uml是个好东西
2011-09-13 09:40:16
zyf123cyl
13 楼
刚学UML,还有很多和大家请教的东西...
2011-09-13 13:25:54
peakplum
14 楼
对学习UML普遍存在严重误解。
2011-09-17 22:35:59
ashellq
15 楼
我是从大学课程:软件工程开始的。接触UML
2011-11-16 08:41:25
kedron
16 楼
我发现很多书中的 UML 图都不标准,也不统一。
2012-01-03 17:22:15
redge_2008
17 楼
2012-02-03 20:37:21
yp347162324
18 楼
新手多多关照
2012-05-05 20:16:05
baowei1003
19 楼
系统分析师UML实务手册
2012-05-25 13:21:43
liyun5613
20 楼
UML很高深
2012-07-01 16:24:11
purui12315
21 楼
回复:2楼
2012-07-31 14:21:50