第14章 Ros的双向工程.ppt

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第14章 Ros的双向工程

第14章 Rose的双向工程 目录 第14章 Rose的双向工程 双向工程包括正向工程和逆向工程。正向工程指把设计模型映射为代码;逆向工程是指将代码转换成设计模型。 14.1 双向工程简介 无论是把设计模型转换成代码,还是把代码转换为设计模型,都是一项非常复杂的工作。正向和逆向工程这两方面结合在一起,定义为双向工程。双向工程提供了一种机制,它使系统架构或者设计模型与代码之间进行双向交换。 正向工程把设计模型转换为代码框架,开发者不需要编写类、属性、方法代码。一般情况下,开发人员将系统设计细化到一定的级别,然后应用正向工程。 逆向工程是指把代码转换成设计模型。在迭代开发周期中,一旦某个模型作为迭代的一部分被修改,采用正向工程把新的类、方法、属性加入代码;同时,一旦某些代码被修改,采用逆向工程,将修改后的代码转换为设计模型。 自从1997年正式发布UML以后,出现了许多UML建模CASE工具。其中最具代表性的两款CASE工具是Sparx Systems的Enterprise Architect和IBM 的Rational Rose。 14.2 正向工程 正向工程(代码生成)是指把Rose模型中的一个或多个类图转换为Java源代码的过程。Rational Rose里的正向工程是以组件为单位的。即Java源代码的生成是以组件为单位的,不是以类为单位的。所以,创建一个类后需要把它分配给一个有效的Java组件。如果模型的缺省语言是Java,Rose会自动为这个类创建一个组件。 当对一个设计模型元素进行正向工程时,模型元素的特征会映射成Java语言的框架结构。例如,Rose中的类会通过它的组件生成一个.java文件;Rose中的包会生成一个java包。另外,当把一个UML包进行正向工程时,将把属于该包的每一个组件都生成一个.java文件。 14.2 正向工程 Rose工具能够使代码与UML模型保持一致,每次创建或修改模型中的UML元素,它都会自动进行代码生成。缺省情况下,这个功能是关闭的,可以通过【Tools→Java→Preject Specification】打开该功能,选择“Code Generation”选项卡,选中“Automatic Synchronization”,如图14-1所示。 图14-1所示的“Code Generation”窗口是代码生成时最常用的一个窗口,下面对该窗口中的每项做详细的介绍。 (1)IDE:指定与Rose相关联的Java开发环境。下拉框列出了系统注册表里的IDE。Rose可以识别的开发环境有以下几种:VisualAge for Java,VisualCafe,Forte for Java以及JBuilder。缺省的IDE是Rose内部编辑器,它使用Sun的JDK。 14.2 正向工程 (2)Default Data Types:该项用来设置缺省数据类型,当创建新的属性和方法时,Rose就会使用这个数据类型。缺省情况下,属性的数据类型是int,方法返回值的数据类型是void。 (3)Prefixes该项设定缺省前缀(如果有的话),Rose会在创建实例和类变量的时候使用这个前缀。缺省不适用前缀。 (4)Generate Rose ID:设定Rose是否在代码中为每个方法都加惟一的标识符。Rose使用这个RoseID来识别代码中名称被改动的方法。缺省情况下,将生成RoseID.如果关闭了“Automatic Synchronization”,就需要打开该功能。 14.2 正向工程 (5)Generate Default Return Line:设定Rose是否在每个类声明后面都生成一个返回行。缺省情况下,Rose将生成返回行。 (6)Stop on Error:设定Rose 在生成代码时,是否在遇到第一个错误时就停止。缺省情况下这一项是关闭的,因此即使遇到错误,也会继续生成代码。 (7)Create Missing Directories:如果在Rose模型中引用了包,这项将指定是否生成没有定义的目录。缺省情况下,这个功能是开启的。 (8)Automatic Synchronization Mode:当启用这项时,Rose会自动保持代码与模型同步,也就是说代码中的任何变动都会立即在模型中反映出来,反过来也一样的。缺省情况下,没有使用这个功能。 (9)Show Progress Indicator:指定Rose是否在遇到复杂的同步操作时显示进度栏。缺省情况下不会显示。 14.2 正向工程 (10)Source Code Control:指定对哪些文件进行源码控制。 (11)Put source code of the project under Source Control:是否使用

您可能关注的文档

文档评论(0)

shaofang00 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档