首页> 外文会议>IEEE International Conference on Electronics Information and Emergency Communication >Selecting Sequence of Refactoring Techniques Usage for Code Changing Using Greedy Algorithm
【24h】

Selecting Sequence of Refactoring Techniques Usage for Code Changing Using Greedy Algorithm

机译:使用贪婪算法选择代码改变的重构技术序列

获取原文

摘要

Refactoring is the process of changing the internal structure of software but it preserves external behavior of software. To improve software maintainability, we may apply several refactoring techniques to source code. Applying different sequence of refactoring techniques to different parts of source code results in different code changes and different level of software maintainability. We propose an approach for selecting sequence of refactoring techniques usage for code changing using Greedy Algorithm. To get optimal software maintainability, we create possible sequences of refactoring techniques usage and apply each refactoring technique to source code. Greedy Algorithm is used to separate the optimal sequence of refactoring techniques usage from possible sequences of refactoring techniques. We evaluate the approach with source code containing Long Method, Large Class and Feature Envy bad smells by comparing the changed source code result between applying the approach and without applying sequence of refactoring techniques usage. The compared results show that the changed source code by applying our approach can improve software maintainability better than the changed source code without sequencing refactoring techniques usage.
机译:重构是更改软件内部结构的过程,但它保留了软件的外部行为。为了提高软件可维护性,我们可以将多种重构技术应用于源代码。将不同的重构技术序列应用于源代码的不同部分导致不同的代码变化和不同水平的软件可维护性。我们提出了一种方法,用于使用贪婪算法选择代码改变的重构技术使用序列的方法。为了获得最佳的软件可维护性,我们创建了可能的重构技术使用序列,并将每个重构技术应用于源代码。贪婪算法用于将重构技术的最佳序列与再分行定技术的可能序列分开。通过比较应用方法和不应用重构技术的使用序列,我们评估包含长方法,大型级别,大型级别的源代码的方法,大类和嫉妒差的气味。比较结果表明,通过应用我们的方法的改变源代码可以提高软件可维护性,而不是更改的源代码,而无需排序重构技术使用。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号