模型驱动下的java代码自动生成_王海林

模型驱动下的java代码自动生成_王海林

ID:33494506

大小:267.19 KB

页数:3页

时间:2019-02-26

模型驱动下的java代码自动生成_王海林_第1页
模型驱动下的java代码自动生成_王海林_第2页
模型驱动下的java代码自动生成_王海林_第3页
资源描述:

《模型驱动下的java代码自动生成_王海林》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、162福建电脑2011年第3期模型驱动下的Java代码自动生成王海林(山西财经大学信息管理学院山西太原030006)【摘要】:提出模型驱动下的代码自动生成方法以MetaEdit+作为元建模工具,由领域专家建立领域元模型和模型,通过生成器定义语言MERL,软件开发人员可以很方便地设计代码生成器,直接从领域专家所建立的图形领域模型生成Java程序代码。经测试,所生成的Java程序代码可以在Windows操作系统环境的Java平台上正确运行。【关键词】:模型驱动;DSL;代码生成;元建模;MetaEdit+0、引言目前元建模工具有很多,比较著名的有M

2、etaEd-统一建模语言UML(UnifiedModelingLanguage)的[4]it+、GME、DOME、EMF、GMF等,从易用性和代码生成出现和广泛应用大大提升了模型在软件开发中的作等因素考虑,本文选择了MetaEdit+作为元建模工具。用,以模型为核心的软件开发思想已逐渐为人们所接MetaEdit+是一款出现较早、使用最广的商用元建受,近年来出现的模型驱动开发方法MDD(Model模工具,是一个基于图形的建模工具。实际上[1]就是这种开发思想的典型代表。DrivenDevelopment)MetaEdit+是一个建模工具集,它提供

3、了一组建模工尽管MDD与基于UML的面向对象的开发方法都以模具,如diagrameditors,matrixeditor,tableeditor,型为核心,但二者存在着重要的区别。基于UML的面browsers,reportandcodegeneration,methodtools,API向对象方法强调的是"大而全"的开发思想,这主要是[5]&XMLconnectivity,objectrepository等。使用因为UML是作为一种通用建模语言而设计的[2],它的MetaEdit+可以大大缩短软件开发周期,软件开发效率功能不仅多而且复杂,很难

4、为非软件开发人员(如领域提高5-10倍[6],因为它提供了强大代码生成功能,整个专家)学习和掌握。整个建模过程领域专家的参与度开发过程可不必编写代码[7]。在下面的部分中,本文以低,往往是由软件设计人员独自承担,且软件设计人员一个从系统功能结构图直接生成应用软件主窗口和菜对领域知识不熟悉,需要花时间学习,造成不必要的资单系统的例子为例详细介绍如何通过MetaEdit+实现源浪费。MDD更注重应用领域,它强调的是"小而专"模型驱动下的Java代码自动生成。的开发思想。也就是说,它不要求像UML这样的通用2、基于MetaEdit+的元建模建模语言提

5、供很多很全的功能,只要求提供一种面向在设计代码生成器之前,首先要建立领域模型。在特定领域的建模语言DSL(DomainSpecificLanguage)[3]UML中通常用类图对静态结构建模,用顺序图,状态能快速有效地解决实际问题即可。由于DSL是面向特图对动态行为建模[8],而MetaEdit+是一种元建模工具,定领域的,其提供的功能仅限于本领域且为领域专家它并没有事先将图分为类图、顺序图或状态图等,图的所熟知,所以简单易学,整个建模工作可由领域专家独含义是由建模者自己定义。通过MetaEdit+提供的工具自完成。MDD的另一个开发思想是通过

6、模型自动生成建模者可以设计具有自己风格的图形符号和图。程序代码而无需手工编写,这样开发人员的主要任务2.1建立领域元模型就变成程序代码生成器的设计了。本文中建立领域元模型就是设计绘制系统功能结1、MetaEdit+构图和代码生成所需的各种图形符号和元素。具体地通常我们把设计DSL的工具软件称为元建模工具讲,就是创建MetaEdit+的Property(属性)、Object(对(meta-modelingtools),为设计DSL所建的模型称为元象)、Relationship(联系)、Role(角色)和Graph(图)。模型(meta-model

7、),而建立元模型和设计DSL的过程2.1.1创建属性称为元建模(meta-modeling)。由于领域专家对其所在领通过MetaEdit+的PropertyTool工具创建每个对域更熟悉,所以建立元模型、设计DSL以及建立模型象的属性,创建的属性及说明如下:的任务应该由领域专家来完成。因此在选择元建模工Name[Software]:对象的名称具时必须保证它简单易学,这样只要对领域专家稍加Index[Software]:对象在菜单中的顺序培训他们即可掌握,另外选择的元建模工具必须具有CallFunction[Software]:叶菜单项调用的功能

8、模块从模型直接生成程序代码的功能。2.1.2创建对象2011年第3期福建电脑163元模型的对象实际上就是模型中的类,通过ObjectTool工具创建。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。