知道UML造成了怎样的局面大混乱吗?知道什么样的功能是UML拥有但Java不具备的吗?知道我们为什么需要除JAVA外的另一种电脑语言吗?UML并不仅仅只是JAVA或者其它什么语言的替代品。UML并不仅仅只是JAVA或者其它什么语言的替代品。UML是面向对象的分析及设计的注释。UML是独立于那些传统设计语言之外的一种语言。因为UML并不依附于某种语言,而且它被用作是联系沟通Java、 C++ 、Smalltalk等语言的基础工具。通过使用UML,可以在开始编码之前规划好整个系统,并且开发人员清楚自己所负责的模块在整个系统中所起的作用。
更为重要的是,UML可以帮你记录下从设计就开始出现的错误,要知道糟糕的设计会带来一系列的麻烦。设想一下,在源代码编制到一半的时候,你忽然发现你所需要的信息已经枯竭了,但你却没有办法重新取得信息,因为你没有引用OBject,甚至于你引用了object,然而信息确是非public的。显然的,你将花费数天时间来找出代码的变化。UML可以帮您摆脱如下一些困境:代码随着细节的增多而累积,因此,查找哪些是系统的基本要素,了解objects之间的关系如何以及它们之间怎么联系都会变得困难起来。当大量的代码产生出来的时候,做一些改变也变得困难。因此决定一个对象的功能被分配到协作中的设置是一项主要的工作。甚至有时只是改变一个方法的名称那样简单事情,也很可能导致一个很长的编辑----编译---错误循环。在编码之前高水平的设计是进行正确的需求分析和精确的定义,UML的自动化工具固然重要,但UML在设计讨论中就显得更为有用。