首页> 外文会议>International Conference on Software Maintenance and Evolution >Scripting parametric refactorings in Java to retrofit design patterns
【24h】

Scripting parametric refactorings in Java to retrofit design patterns

机译:Java中的脚本化参数重构以翻新设计模式

获取原文

摘要

Retrofitting design patterns into a program by hand is tedious and error-prone. A programmer must distinguish refactorings that are provided by an Integrated Development Environment (IDE) from those that must be realized manually, determine a precise sequence of refactorings to apply, and perform this sequence repetitively to a laborious degree. We designed, implemented, and evaluated Reflective Refactoring (R), a Java package to automate the creation of classical design patterns (Visitor, Abstract Factory, etc.), their inverses, and variants. We encoded 18 out of 23 Gang-of-Four design patterns as R scripts and explain why the remaining are inappropriate for refactoring engines. We evaluate the productivity and scalability of R with a case study of 6 real-world applications. In one case, R automatically created a Visitor with 276 visit methods by invoking 554 Eclipse refactorings in 10 minutes - an achievement that could not be done manually. R also sheds light on why refactoring correctness, expressiveness, and speed are critical issues for scripting in next-generation refactoring engines.
机译:手工将设计模式改造到程序中既繁琐又容易出错。程序员必须将集成开发环境(IDE)提供的重构与必须手动实现的重构区分开来,确定要应用的重构的精确顺序,并以费力的方式重复执行该顺序。我们设计,实现和评估了Reflective Refactoring(R),这是一个Java软件包,用于自动创建经典设计模式(Visitor,Abstract Factory等),它们的逆函数和变体。我们将23个四位数的设计模式中的18个编码为R脚本,并解释了为什么其余的不适合用于重构引擎。我们通过对6个实际应用程序的案例研究来评估R的生产率和可伸缩性。在一种情况下,R通过在10分钟内调用554个Eclipse重构自动创建具有276种访问方法的Visitor,这是无法手动完成的。 R还阐明了为什么重构的正确性,表达性和速度是下一代重构引擎中编写脚本的关键问题。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号