1、介绍
UML对Java系统的设计是一个很有帮助的语言,该语言综合了面向对象的建模语言、方法以及过程,系统整体设计可以帮助我们认清整个软件的开发概貌和过程,相信学过软件工程的人都知道,优点就不多说了。
Together就是Borland公司推出的一款将UML功能和IDE开发工具集成在一起的一套UML建模软件。在使用过程中可以同时看到UML图和Java源代码,修改UML图会使得源代码得到即时的同步修改,反过来,修改Java源代码也会使该代码同步地在UML图中反映出来。
2、版本
Together有专门的开发版本,就是standalone的,以前叫做TogetherControlCenter,这个在网上可以找到中文教程,这个版本是自身自带了Java的IDE和UML,现在演进到了Together Architect 1.0了,应该变化不会太大。另外Together有针对各种IDE的版本,比如for JBuilder,for .NET,for Eclipse,我下的就Together For Eclipse Edition,在Borland的主页上可以找到各自不同的版本。
3、下载安装
下载地址:
http://www.borland.com/prodUCts/downloads/download_together.Html
选择Together For Eclipse,其中有针对各种Eclipse版本,我不知道具体有什么不同,不过还是按照它说的,对应好自己的Eclipse版本吧,我用的是Eclipse3.0,所以最新推出的Together Edition for Eclipse 7.0就是我的最佳选择了。在下载过程中,会提示你登录,这个花少许时间注册、登录,留个邮箱地址,邮箱地址用来给你发registrar active file的,所以一定要正确,假如以后你的这个文件丢失还可以通过邮箱地址重新下载,下载过程中会提示用一个Download Manager的工具下载,建议采用这个,下载完后会从本机删除的,采用这个工具下载速度很快的,否则假如你有耐性就等着几K速度下载吧。^_^。
下载完后,安装就简单了,安装过程中会提示你指出Eclipse 的SDK。windows下:exe文件,双击就OK了
Linux下:bin文件,假如可执行属性为空的话,chmod 777,然后执行该文件就OK了。
另外check自己的注册邮箱,会收到Borland的一封邮件,附件是reg610.txt,这个文件是用来激活你的Together软件的,因为下载的版本是 15 days trial,所以需要用该文件激活注册。其方法:将该文件保存到自己的用户目录下面,这样Together启动时会在用户目录下自动加载该文件完成 activation 。
用户目录:
Windows 95/98 单用户: C:\Windows
Windows 95/98 多用户: C:\Windows\Profiles\<username>
Windows NT: C:\WINNT\Profiles\<username>
windows 2000/XP: C:\Documents and Settings\<username>
UNIX and Linux: 就是你的login in 目录了,比如,大部分都是
/home/<username>
4、基本的使用
安装完成后,就可以启动软件了。你可以直接从程序选项启动Together For Eclipse启动后,看到的就是Eclipse软件视图,只是将Together的视图集成到了里面。简单点说,这个主要就是UML的设计了。从这个地方开始,可以通过《Get Started》文档一步步来操作了,具体的就是如何进行UML的define,design,deploy那些工作了。
我这里主要想讲的是通过跟Eclipse结合起来使用来理解Java中的设计模式,这里先推荐一本关于这方面的书--《Java与模式》,中国人写的,阎宏,个人觉得写的很不错,我看完后的感觉是对Java所有的类库的设计有了一个清楚的理解,不会觉得这么多类毫无头绪一样,也对面向对象有了更深的熟悉。
举个例子,当初在看Java io时就觉得iostream那么多的类,这怎么用啊,有时就根据经验,随便用,还好经验没怎么出错,但自己的理论还是没有头绪,这样假如碰到非凡情况需要更换解决方式就没辙了。在设计模式中,Java io用的就是适配器模式和装饰模式,里面讲了io中怎么将流的类(InputStream,OutputStream)和读写操作的类(Reader,Writer)适配起来的,还有各个读写操作流(FileInputStream,ByteArrayInputStream)之间是如何装饰的。还有工厂方法模式,代理模式,命令模式,观察者模式,备忘录模式这些都是令我对Java面向对象理解很深的几种模式,所以希望还是先对设计模式有点了解比较好。