一、什么是UML?
统一建模语言(UML是 Unified Modeling Language的缩写)是用来对软件密集系统进行可视化建模的一种语言。UML为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。
二、背景知识
UML的本意是要成为一种标准的统一语言,使得IT专业人员能够进行计算机应用程序的建模。UML的主要创始人是Jim Rumbaugh、Ivar Jacobson和Grady Booch,他们最初都有自己的建模方法(OMT、OOSE和Booch),彼此之间存在着竞争。最终,他们联合起来创造了一种开放的标准。(听起来是不是很熟悉?这个现象类似J2EE、SOAP和Linux的诞生。)UML成为"标准"建模语言的原因之一在于,它与程序设计语言无关。(IBM Rational的UML建模工具被广泛应用于J2EE和.NET开发。)而且,UML符号集只是一种语言而不是一种方法学。这点很重要,因为语言与方法学不同,它可以在不做任何更改的情况下很容易地适应任何公司的业务运作方式.
三、面向过程还是面向对象?
1、什么是面向过程方法?
在面向过程的眼中,世界的一切都不是孤立的,他们相互紧密联系在一直起,缺一不可,相互影响,互相作用,形成一个个具有严格因果律的小系统,而更多的小系统组成更大的系统,所有小系统之间的联系也是密不可分的。
2、面向过程的困难?
面向过程的困难,本质上是面向过程的方法将世界看作过程化的,一个个紧密相联的小系统,构成这个系统的各个部份之间有着密切的联系。这种分析方法在需求较低的时候很管用,然而在大的复杂的系统需求时就显得力不从心了。就如同蝴蝶效应,预设的过程仅仅因为一个小小的翅膀的煽动,整个面目全非。
3、什么是面向对象方法?
面向对象方法高将世界看作一个个互相独立的对象,相互之间并无因果关系,只有在某种外部力量的驱动下,它们之间才会依据某种规律相互传递信息。这些交互过程构成了这个世界的一个生动"过程",在没有外力的情况下,它们是静止的。
从微观的角度说,这些独立的对象有着一系列奇妙的特性。例如:对象有着坚硬的外壳,从外部看,除了它用来与外界进行交互的通道外,对象内部就像一个黑盒子,什么也看不见,这被称为封装。再例如两种对像组合在一起,形成一种新的对象,这被称之为:聚合。对象可以繁衍后代,产生新的子对象,这称之为:继承。对象都是多面派,它会根据不同的要求展现其中的一面,这就是接口,多个对象可能张着相同的脸,这张脸背后却有着不同的行为,这就是多态...
从宏观的角度上看,对象是"短视"的,它不知道自己身处的世界是怎么回事,也不知道它的行为是如何贡献给这个世界,它只知道与它有着联系的一群小伙伴,(这称为依耐),并与它们保持着信息的交流(这称为耦合).同时,对象是自私的,即便在每个伙伴之间,它们依然顽强的保护着自己的领土。只允许其它人通过它打开的小小的窗口(这称为方法)与之交流。从不为对方敞开心扉。
4、面向对象的困难?
. 他能完成我们想要的功能,但却看不到它是怎么实现的。
. 规则是可以变化的,那么我们如何实现任意的改变规则来组合它们。
四、UML带来了什么?
1、统一言语:统一的目标就是形成标准和规范,使其达成一致的标准需求。
2、可视化:UML通过原模型和表示方法,把那些通过文字或者其它的很难表示清楚的内容用简单的图形表达和暴露出来 ,准确直观的描述复杂的含义。
3、从现实世界到业务模型:建模是一种解决现实世界问题的一种手段,通过数学计算来分析和预测找出解决问题的办法 。
4、从业务模型到概念模型:业务模型为原始需求,有了业务模型后然后再过渡到业务模型。
5、从概念模型到设计模型:有了详细的设计模型后就可以进行生产,设计模型就好比组装机器。