首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 406 毫秒
1.
DSM 通过提高抽象程度实现软件生产力的提高。本文在深入研究DSM 与元建模以及代码生成等技术后,提出一种特定领域建模与代码生成的方法,并建立起它的实现。本文归纳总结了创建特定领域元模型及其实现的方法与原则;介绍了使用GMF 通过特定领域元模型快速定制生成特定领域建模工具的过程;提出基于系统架构与框架创建覆盖不同业务类型的样例代码的方法与原则;总结归纳了特定领域建模与代码生成的整体过程;提出根据特定元模型将样例代码制作成代码模板的方法与原则;最后介绍了通用代码生成引擎的组成部分及其作用以及代码生成的过程。  相似文献   

2.
通过代码自动、快速地生成应用系统是软件开发的捷径。基于Velocity的代码生成技术是目前常用的方法。通过分析已有代码自动生成技术解决方案存在的问题,结合快速生成信息管理系统的业务需求,提出并实现了一个基于DOM4J解析框架以及Velocity模板技术的代码自动生成的平台框架。通过一个实例,给出该平台的实现过程。目前该自动生成技术已应用于实际软件开发中,初步达到了快速生成代码的研究目标。  相似文献   

3.
针对当前克隆跟踪大多基于软件的发布版本,丢失了软件开发过程中克隆代码较多的变化信息,并且克隆演化模式定义不明确、不区分视角。提出一种基于修改日志克隆代码跟踪方法,并分三种视角(克隆群、克隆片段、克隆代码内容)识别演化模式。首先,将每次提交作为一个小版本,使用NiCad进行克隆检测;其次,基于Token编辑距离相似度克隆群初步映射;再次,基于修改日志克隆片段精准映射;然后,基于克隆片段映射结果修正克隆群映射;最后,分视角识别克隆演化模式。对6款开源软件总共近8?000个版本进行实验,结果表明超过97%的克隆稳定演化,而分离演化模式、合并演化模式、复杂演化模式均不超过0.01%,一致变化演化模式、不一致变化演化模式均不超过2%。在多款软件上与领域内较优秀的同类工具gCad进行对比实验,结果查全率(提高了2%)、查准率(提高了2%)明显高于gCad,而且同环境下速度比gCad快。  相似文献   

4.
UML是一种被广泛用于软件系统需求分析和详细设计的标准建模语言,研究将UML描述的软件详细设计自动生成代码的技术可以大大加速软件产品的开发进度,提高软件的质量。提出一种将UML类图和顺序图相结合生成具有静态结构和动态行为信息的C++代码的方法,从而解决现在多数代码生成工具只能将静态图转换为C++代码框架而不能处理动态行为模型转换的问题。该方法包括UML类图和顺序图的元模型以及相应的转换规则。最后通过一个采用Velocity技术实现的代码生成器生成代码的实例描述了代码生成的具体过程及结果。  相似文献   

5.
回调函数的逆向恢复是静态二进制翻译的一个难点。针对使用C后端的静态二进制翻译框架,提出并实现回调函数逆向恢复方法,该方法结合代码间隙分析,在后端C代码生成过程中插入映射源回调函数地址到目标机函数地址的代码。相对于使用解释器的方法,该方法具有实现简洁,在目标机上运行速度更快的优点。  相似文献   

6.
陈桌  张丽萍  王春晖 《计算机应用》2016,36(12):3461-3467
针对现有克隆演化模式分类不清晰、克隆谱系提取工具少且效率低等问题,提出了根据克隆代码映射关系和演化信息自动构建克隆谱系的方法。首先通过词频向量计算、代码行距以及克隆属性相结合分阶段映射版本间克隆;然后根据映射结果为克隆群和克隆片段添加演化模式;最后串联所有版本中的克隆映射关系和演化模式构建克隆谱系。对4款开源软件进行实验并人工验证,实验结果表明克隆谱系提取工具——ECG的可行性和高效性。此外,从提取结果中发现,在演化过程中约42%的克隆代码未发生变化,发生不一致变化的克隆代码约占3.48%,此类克隆可能会引入潜在bug需要被重点关注。该方法将为克隆代码质量评估和管理提供参考和支持。  相似文献   

7.
矩阵乘法是众多科学计算的核心,而向量化编程是提升其性能的主要手段之一。针对现有的向量化优化往往存在需要手工进行调优以及与硬件结构映射的问题,基于多面体编译器PPCG,在多面体模型中引入向量代码生成框架,提出了基于多面体模型的矩阵乘法向量代码生成框架。通过对矩阵乘法的向量化方案进行收益分析来确定向量化方案,指导应用框架的代码生成,基于该代码生成框架,有利于矩阵乘法的向量化快速优化。选取13个规模在64×64×64到1 024×1 024×1 024之间的矩阵乘法用例进行实验,结果表明,该框架能够正确生成向量化代码,与基础编译器ICC的自动向量化功能相比,应用该框架生成的向量化代码最高获得了5.09倍的加速和3.39倍的平均加速。  相似文献   

8.
构件组装是提高软件开发效率与产品质量的有效途径。本文在深入研究构件组装与DSM 以及代码生成等技术后,提出一种普适性的构件组装机制,建立起构件与连接件元模型,并对它们的性质进行了归纳总结,在此基础之上建立起元模型的实现,并介绍了以构件与连接件元模型为输入,通过GMF快速配置生成构件组装建模工具的过程。最后,提出一种代码模板制作与代码生成的方法与实现,并介绍了通过构建组装模型与代码模板生成完整的可运行程序代码的过程。  相似文献   

9.
代码生成技术的出现,为满足软件系统中重复性代码的自动生成、保障软件系统的健壮性和可维护性等需要提供了解决方案。目前业界针对Java EE企业应用的代码生成器在系统功能整合方面还存在不足,依赖于程序员基于生成的原型代码进行后续开发。本文提出了一个基于SSH2与权限管理框架Apache Shiro整合的代码生成器方案,有效解决了复杂业务中的多表关联以及权限管理问题,并探讨了实现过程中几个关键技术问题。  相似文献   

10.
针对克隆跟踪不精确、演化模式识别繁琐以及克隆群合并现象处理困难等问题,提出一种改进的克隆代码演化痕迹构建及模式识别方法。在相邻版本使用主题概率模型实现克隆群初步映射,计算代码位置重叠率及文本相似度完成克隆片段映射,修复克隆群映射得到精确的相邻版本克隆映射结果。依据相邻版本间建立映射的克隆群数量关系及交叉程度识别短期演化模式,构建图模型,将克隆群作为点、映射关系作为边,并根据产生形式为克隆群标注短期演化模式。使用广度优先搜索算法提取克隆家系,按照克隆家系中包含的克隆群种类及是否有环识别长期演化模式。对5款开源软件的70个版本进行实验,结果表明,运用该方法约95%的克隆在演化中保持稳定,约1%的克隆经历了合并复合,并且80%左右克隆代码的生命周期未超过发布版本总数的一半。  相似文献   

11.
简述了UCDOS五笔字型码表组成及WINDOWS3.X的码表组成,并分析了UCDOS五笔字型码表转换成WINDOWS3.X自定义码表的途径。在简要分析的基础上,采用流行的FOXPRO命令语言编写码表转换程序,并叙述了实现步骤。所提出的码表转换方法,可作为产生新编码或扩充码表等工作参考。  相似文献   

12.
针对大多数软件代码注释数量少、质量低的问题,提出了一种自动生成代码注释的方法。利用Nicad检测出克隆代码,提取出这些代码以及相应的注释,对代码和注释分别进行精简优化,将注释与代码匹配映射,为代码自动生成注释。对5款软件中的代码注释进行手动验证并评估注释结果,实验结果发现28%的代码注释是良好的,同时将注释报告给5位专家,专家评估结果为两款软件的代码注释为良好。实验结果及用户调研表明,该方法对于自动生成代码注释是可行、有效的。  相似文献   

13.
陈秋远  李善平  鄢萌  夏鑫 《软件学报》2019,30(4):962-980
代码克隆(code clone),是指存在于代码库中两个及以上相同或者相似的源代码片段.代码克隆相关问题是软件工程领域研究的重要课题.代码克隆是软件开发中的常见现象,它能够提高效率,产生一定的正面效益.但是研究表明,代码克隆也会对软件系统的开发、维护产生负面的影响,包括降低软件稳定性,造成代码库冗余和软件缺陷传播等.代码克隆检测技术旨在寻找检测代码克隆的自动化方法,从而用较低成本减少代码克隆的负面效应.研究者们在代码克隆检测方面获得了一系列的检测技术成果,根据这些技术利用源代码信息的程度不同,可以将它们分为基于文本、词汇、语法、语义4个层次.现有的检测技术针对文本相似的克隆取得了有效的检测结果,但同时也面临着更高抽象层次克隆的挑战,亟待更先进的理论、技术来解决.着重从源代码表征方式角度入手,对近年来代码克隆检测研究进展进行了梳理和总结.主要内容包括:(1)根据源代码表征方式阐述并归类了现有的克隆检测方法;(2)总结了模型评估中使用的实验验证方法与性能评估指标;(3)从科学性、实用性和技术难点这3个方面归纳总结了代码克隆研究的关键问题,围绕数据标注、表征方法、模型构建和工程实践4个方面,阐述了问题的可能解决思路和研究的未来发展趋势.  相似文献   

14.
魏巍  段晓东  刘勇奎  郭晨 《计算机应用》2017,37(6):1747-1752
链码是一种以较少的数据存储表示线条、曲线和区域边界的编码技术。为进一步提高链码的压缩效率,提出了一种新的压缩顶点链码:改进的正交3方向顶点链码(IO3DVCC)。IO3DVCC将顶点链码(VCC)的统计特征与正交3方向链码(3OT)的方向特征相结合,共设5个码值。码值1将VCC中的1、3组合和3、1组合归并表示,码值2与VCC的对应码值表达相同,码值3与3OT中的码值2表达相同,码值4和码值5分别对应2个连续的新链码码值1和8个连续的VCC码值2。新链码基于Huffman编码,为不定长编码。针对100幅图像的轮廓边界,统计并计算了IO3DVCC与改进的相对8方向Freeman链码(ERD8FCC)、基于算数编码的变长相对四方向Freeman链码(AVRF4)、基于算数编码的正交3方向链码(Arith_3OT)、压缩VCC (CVCC)和改进的CVCC (ICVCC)6种链码各码值出现的概率、平均码值表达能力、平均码长和链码效率。实验结果表明,IO3DVCC效率最高。针对随机选择的20幅轮廓边界图像,统计并计算了IO3DVCC、Arith_3OT和ICVCC3种链码表达的总码数、二进制总位数,以及相对于8方向Freeman链码的压缩比率。实验结果表明,IO3DVCC的压缩效果最好。  相似文献   

15.
P码作为GPS军用伪码,具有结构复杂、周期长且码速率快的特点,这使得使用P码的软件接收机不仅定位精度高,且具有很强的抗干扰和反欺骗能力。能够实现任意卫星的任意时刻P码的产生,对于实现P码直接捕获和跟踪有很重要的意义。对于P码的产生原理和结构进行了分析,基于MATLAB设计了相应的P码发生算法并进行简单的算法仿真。之后针对FPGA硬件平台对P码发生器进行了相应的模块设计,包含寄存器模块、延时模块、周期控制模块和寄存器相位模块等。测试实验结果表明P码发生器可以基本无延迟地生成任意卫星、任意时刻的P码。  相似文献   

16.
Code transformation and analysis tools provide support for software engineering tasks such as style checking, testing, calculating software metrics as well as reverse‐ and re‐engineering. In this paper we describe the architecture and the applications of JTransform, a general Java source code processing and transformation framework. It consists of a Java parser generating a configurable parse tree and various visitors (transformers, tree evaluators) which produce different kinds of outputs. While our framework is written in Java, the paper further opens an opportunity for a new generation of XML‐based source code tools. Copyright © 2004 John Wiley & Sons, Ltd.  相似文献   

17.
代码转换是代码自动生成过程中的重要环节.提出一种基于模板、可适用于任意文法描述代码之间转换的"属性匹配-替换"算法.利用该算法,成功实现了OSEK规范中OIL语法描述代码到C语言代码的转换.  相似文献   

18.
低功耗是嵌入式系统设计中的重要约束条件之一.代码压缩能够减小程序目标代码尺寸,减小程序目标代码所占用的存储器空间和通信开销,从而在系统级上降低了系统功耗.本文对指令集裁剪压缩技术、全代码压缩与子代码压缩技术以及基于片上Cache的代码压缩技术等几种比较典型的代码压缩技术的特征进行了讨论和分析.  相似文献   

19.
杨博  张能  李善平  夏鑫 《软件学报》2020,31(5):1435-1453
代码补全(code completion)是自动化软件开发的重要功能之一,是大多数现代集成开发环境和源代码编辑器的重要组件.代码补全提供即时类名、方法名和关键字等预测,辅助开发人员编写程序,直观提高软件开发效率.近年来,开源软件社区中源代码和数据规模不断扩大,人工智能技术取得卓越进展,这对自动化软件开发技术产生了极大促进作用.智能代码补全(intelligent code completion)根据源代码建立语言模型,从语料库学习已有代码特征,根据待补全位置的上下文代码特征在语料库中检索最相似的匹配项进行推荐和预测.相对于传统代码补全,智能代码补全凭借其高准确率、多补全形式、可学习迭代的特性成为软件工程领域的热门方向之一.研究者们在智能代码补全方面进行了一系列研究,根据这些方法如何表征和利用源代码信息的不同方式,可以将它们分为基于编程语言表征和基于统计语言表征两个研究方向,其中,基于编程语言表征又分为标识符序列、抽象语法树、控制/数据流图3个类别,基于统计语言表征又分为N-gram模型、神经网络模型两个类别.从代码表征的角度入手,对近年来代码补全方法研究进展进行梳理和总结,主要内容包括:(1)根据代码表征方式阐述并归类了现有的智能代码补全方法;(2)总结了代码补全的一般过程和模型评估中的模型验证方法与性能评估指标;(3)归纳了智能代码补全的主要挑战;(4)展望了智能代码补全的未来发展方向.  相似文献   

20.
为解决一维条码使用依靠数据库、受到极大限制的问题 ,设计的 QR Code码作为一种矩阵式二维码 ,具有超高速识读、全方位识读 ,能够有效地表示中国汉字、日本汉字等其他二维码所没有的特点。 QR Code用于印刷地图上同一位置的直接输入、检索系统 ,有很强的使用价值。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号