基于重构操作模板的代码优化方法技术

技术编号:10521706 阅读:85 留言:0更新日期:2014-10-08 18:53
一种基于重构操作模板的代码优化方法,通过分析抽取通用的重构操作,定义通用的重构操作模板并建立相应的重构操作模板库,然后针对待优化的源程序代码,分析抽取其典型重构操作,选定要使用的重构操作模板并赋值,应用带重构功能的集成开发环境工具进行重构转换操作的执行,最终生成优化后的目标程序代码及重构操作日志。与传统程序代码优化方法相比,该方法具备优化时机更灵活、操作更自动高效、处理准确性更高、代码优化结果更丰富等特点。

【技术实现步骤摘要】
基于重构操作模板的代码优化方法
本专利技术涉及一种基于重构操作模板的代码优化方法。
技术介绍
代码优化是指在不改变程序运行结果的前提下对程序代码进行变换,以达到提高程序运行效率的过程。代码优化可以在程序编译的各个阶段进行。代码优化的方式有很多种,可以修改代码的运行逻辑结构,如代码的算法;也可以修改代码的组织逻辑结构,如方法间的调用;还可以修改代码的表现形式,如属性名的更改。重构技术主要是指不改变程序编译结果的前提下,通过调整程序内部结构设计,提高代码的可读性。重构目前是代码优化方法的最佳选择之一,可以通过改进软件设计以及增强程序可读性,使代码不断优化从而快速定位程序出错以及提高编程速度等。重构的实现方式有手动和自动两种,其本质的区别在于是否有工具的支持。重构不同于代码生成,在现有的具有复杂逻辑结构的代码基础上进行修改比重新生成一段所需代码段的工作要复杂的多。随着人们在重构研究上的不断深入,支持一些特定的重构操作的工具也陆续出现,典型的有eclipse(一种支持Java语言程序开发的集成开发环境)的重构工具,但这些工具更像是简单的代码修改工具,每一步操作都需要你手动的对其下达命令,而且转换功能简单。
技术实现思路
本专利技术的目的就是提供一种主动性强、效率高、结果直观的基于重构操作模板的代码优化方法。本专利技术的基于重构操作模板的代码优化方法,包括通用重构操作分析定义、包含具体转化功能的重构操作模板的定义及重构操作模板库建立、重构操作模板选定、重构操作模板赋值、重构操作执行应用代码优化,其具体步骤如下:步骤a:根据日常代码编写经验,分析通用的重构操作,重构操作的组成一般包含两部分:前置条件与转换执行,前置条件有原子型与组合型两种,转换执行包含转换操作与转换元素两部分内容;步骤b:根据分析结果定义通用的重构操作为特定的重构操作模板,(常见重构操作有重命名类、抽取方法、封装域等代码转换功能),针对该重构操作模板,指明具体转换操作的前置条件与转换执行并进行描述,建立相应的重构操作模板库,用于存放这些重构操作模板;一个具体重构操作模板是一个具有基本代码转换功能的重构操作,需要用户指定需要重构的代码元素,通过应用重构操作模板于程序代码的相应元素就可以完成相应的代码重构操作;步骤c:针对待优化的程序代码,根据代码优化需要分析抽取典型的重构操作即与重构操作模板库中某重构操作模板相一致的重构操作,根据这些典型重构操作,从重构操作模板库中选定需要应用到的重构操作模板组成一个集合;重构操作模板是可重复使用的,用户可自定义需要使用的重构操作模板,重构操作模板的选取可根据重构操作模板的前置条件与转换执行或直接根据重构操作模板的描述;步骤d:针对选定的重构操作模板集合,用户直接在重构参数配置文件中对待重构变量赋值,或在程序开发集成环境中配置并自动生成参数配置文件,分别指出待重构变量在重构操作执行前后的元素值;重构操作执行过程中,被赋值重构变量会自动进行赋值元素的全路径转换,以保证重构操作的准确性;步骤e:使用带重构功能的集成开发环境工具加载选定的重构操作模板集合,根据重构参数配置文件对重构操作模板进行赋值,赋值过程会自动适配元素值的完全路径名,并将已赋值的重构操作模板依次应用于待优化的源代码文件,对程序源代码进行自动化的重构操作处理,处理完毕生成目标程序代码文件及代码重构日志文件。本专利技术的基于重构操作模板的代码优化方法,与普通的手动代码优化方法相比较,具有以下特点:1、可随时进行代码优化操作而不会改变程序使用可察性,我们知道重构操作是可以随时随地进行并且不会改变软件之可察行为,那么基于重构操作序列的代码优化操作也是可以随时随地地进行并且不改变程序使用可察性;2、代码优化操作更自动高效,使用本专利技术所提出的代码优化方法进行代码优化,只需要进行初始的重构操作、重构接口的选取及参数文件的配置,其它工作均由相关工具自动完成,比常见的手动一步一步优化代码效率要高很多;3、代码优化处理准确性更高,由于重构具体操作处理均交由具有重构组合功能的编译工具来完成,相比手动优化而言,经过重构优化后的代码,低级错误、二次错误的出现率几乎为零;4、优化过后的代码结构更清晰、可读性更高,对于深度开发软件、减少程序出错和提高编程效率而言都非常有帮助;总之,基于重构操作模板代码优化方法拥有重构所具备的一切优点。附图说明图1为本专利技术的总体架构流程图。具体实施方式参看图1,该代码优化过程使用到了本专利技术介绍的基于重构操作模板的代码优化方法,其详细实现为:①导入源程序代码文件;②分析待优化的源代码中所需进行的重构操作,抽取为该待优化代码的典型重构操作;③选定重构操作模板:根据待优化代码的典型重构操作,从根据本专利技术方法建立的重构操作模板库中,选定适合的重构操作模板,组成一个重构操作集合;④重构操作模板赋值:我们应当针对源程序待优化内容,对选定的重构操作模板进行赋值,即对重构操作元素的前后状态进行赋值,可以直接在参数配置文件中赋值,也可以在程序开发集成环境中配置;⑤重构转换执行:当所有准备工作就绪时,接下来就是进行重构操作执行了,本专利技术所示方法应用带重构功能的集成开发环境工具来执行重构转换操作。该工具首先加载待优化的源程序文件,通过读取参数配置文件来对选定的重构操作模板进行加载与赋值,然后将重构操作模板依次应用于源程序代码,执行相应的重构操作单元;⑥最后,若重构操作执行成功,则生成并导出已优化的目标程序文件与重构操作日志文件;若重构操作执行过程遇到错误则导出错误标识至日志文件中,并将程序文件还原至初始状态。本文档来自技高网...
基于重构操作模板的代码优化方法

【技术保护点】
一种基于重构操作模板的代码优化方法,其特征在于:它包括通用重构操作分析定义、包含具体转化功能的重构操作模板的定义及重构操作模板库建立、重构操作模板选定、重构操作模板赋值、重构操作执行应用代码优化,具体步骤如下:步骤a:分析通用的重构操作,重构操作的组成一般包含两部分:前置条件与转换执行,前置条件有原子型与组合型两种;转换执行包含转换操作与转换元素两部分内容;步骤b:根据分析结果定义通用的重构操作为特定的重构操作模板,针对该重构操作模板,指明具体转换操作的前置条件与转换执行并进行描述,建立相应的重构操作模板库,用于存放这些重构操作模板;步骤c:针对待优化的程序代码,根据代码优化需要分析抽取典型的重构操作,即与重构操作模板库中某重构操作模板相一致的重构操作,根据这些典型重构操作,从重构操作模板库中选定需要应用到的重构操作模板组成一个集合;步骤d:针对选定的重构操作模板组合,直接在重构参数配置文件中对待重构变量赋值,或在程序开发集成环境中配置并自动生成参数配置文件,分别指出待重构变量在重构操作执行前后的元素值;步骤e:根据重构参数配置文件对重构操作模板进行赋值,赋值过程会自动适配元素值的完全路径名,并将已赋值的重构操作模板依次应用于待优化的源代码文件,对程序源代码进行自动化的重构操作处理,处理完毕生成目标程序代码文件及代码重构日志文件。...

【技术特征摘要】
1.一种基于重构操作模板的代码优化方法,其特征在于:它包括通用重构操作分析定义、包含具体转化功能的重构操作模板的定义及重构操作模板库建立、重构操作模板选定、重构操作模板赋值、重构操作执行应用代码优化,具体步骤如下:步骤a:分析通用的重构操作,重构操作的组成一般包含两部分:前置条件与转换执行,前置条件有原子型与组合型两种;转换执行包含转换操作与转换元素两部分内容;步骤b:根据分析结果定义通用的重构操作为特定的重构操作模板,针对该重构操作模板,指明具体转换操作的前置条件与转换执行并进行描述,建立相应的重构操作模板库,用于存放这些重构操作模板;步骤c:针对待优化的程序代码,根...

【专利技术属性】
技术研发人员:梁良马勇付萍萍周淑芳
申请(专利权)人:国家电网公司国网江西省电力公司信息通信分公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1