- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
UML图到可执行代码的映射探究.doc
UML图到可执行代码的映射探究
摘要:UML作为面向对象的标准建模语言,其以对象为中心,从各个角度描述系统,与最普遍的面向对象编程语言思路统一,可通过类图生成代码框架。UML图到面向对象的可执行代码存在对应关系,通过找到其中的映射算法可以使图形生成更完善的代码,提高软件开发效率和代码质量。
关键词:面向对象建模;活动图;状态图;代码
DOIDOI:10.11907/rjdk.161657
中图分类号:TP301
文献标识码:A文章编号2016)010001505
0引言
随着计算机技术的日新月异,人们对工作效率、智能化、自动化要求越来越高。计算机广泛用于人们生活的同时,人们对各式各样的软件需求越来越多。书写大量代码使软件开发效率低下,而且错误率高。研究一种新的、快速、高效系统开发方法具有重要意义。
模型驱动架构的出现,大大提高了软件开发的效率,在增强软件之间可移植性和协同工作的同时,还大大提高了软件的可维护性。UML作为面向对象标准建模语言,可以从各个角度描述系统,与最普遍的面向对象编程语言存在对应关系。在对对象进行行为建模过程中,有限状态机清楚地描述了对象在完整生命周期中经历的所有状态在什么条件下如何转换,转换中对外界有哪些影响。活动图的一项重要功能是描述算法和流,可以利用其完成代码框架细化。本文主要针对代码生成,提出一种通过UML图直接生成JAVA代码的方法,能够生成简洁、易读的代码。
1UML在代码生成中的基本概念
1.1UML介绍
UML(United Modeling language):统一建模语言,是一种普遍适用的可视化建模语言,定义良好、易于构建和文档化[1]。1997年11月。对象管理组织OMG(Objeet Management Group)全体成员通过将UML作为面向对象建模的标准语言[1]。UML可以提供一个软件系统多种不同的静态和动态视图。静态视图有类图、对象图、用例图、构件图、部署图。动态视图有状态图、活动图、协作图、时序图。2003年推出了UML的新版本UML2.0。UML2.0提供了扩展机制,允许增加新构造块、创建新特性和描述新语义的机制。能对UML的模型进行定制以适应特定的主题和平台。原型、标记值和约束是UML扩展机制的3种基本途径。
1.2UML公共机制
每种语言都有自身的缺陷,UML模型语言并不能描述所有系统。为了表达UML图形中基本模型元素所无法展现的信息,UML提供了一些公共机制。常用的公共机制包括规约、修饰符和扩展机制[2]。
(1)规约。在UML中,可以在每一个元素模型表示法后建立一个规约,通常以文字描述的形式进一步展现元素的语法和语义。
(2)修饰符。对UML的一些基本模型元素可以加上修饰符号来表达特殊含义。例如:类的图形符号包括类名、属性和操作,用斜体的类名表示抽象类,用“+”和“-”等符号表示操作和属性的可见性。
(3)扩展机制。包括约束、标记值和衍型。约束主要用来扩展UML元素的语义,可以增加或修改原有的规则;标记值主要用来扩展UML元素的特性,可以赋予模型元素新的信息;衍型主要用来扩展UML的词汇,可以针对不同的具体技术平台创建新的模型元素。
1.3UML图形
1.3.1状态图
状态图用来描述系统的行为特征。它通过状态、事件以及转换等元素描述一个实例当前状态、历史状态等所有可能状态以及状态之间的转换过程、引起状态转换的事件,它强调一个对象从状态到另一状态的转换。状态图的基本元素有:状态、事件、转换和动作。状态图中定义了以下几种元素:
(1)状态。是指在对象生命周期中满足某些条件、执行某些活动或等待某些事件的一个条件和状况[4]。
(2)迁移。状态迁移表示从源状态到目标状态的一种直接关系。状态迁移用来连接两个状态,箭尾所指的状态表示源状态,箭头所指表示目标状态。迁移发生时,该迁移进入的状态称为活动状态,该迁移离开某一状态时,则此状态变为非活动状态。
迁移的语法形式:事件[监护条件]/动作
事件是对可观察情况的描述。监护条件为触发迁移必须满足的条件,通常是一个布尔类型的表达式来表示,当对应的事件被触发时,如果表达式值为真,动作就被执行,迁移也被触发。动作是一组可执行语句或计算过程,它调用一个操作。动作是原子的、不可中断的。因此上面的迁移语法表达式可以理解为:当事件发生时监护条件、动作将会发生。UML状态图中的每个状态都有可选的进入动作和退出动作。进入动作当进入状态时执行,退出动作当退出状态时执行。进入和退出动作与状态有关,而与转换无关,不管状态如何进入和退出,所有其进入和退出的动作都将被执行。
(3) 事件
文档评论(0)