当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:16:00  来源:本站整理

Eclipse中自动重构实现摸索[Java编程]

赞助商链接



  本文“Eclipse中自动重构实现摸索[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

本文用eclipse的自动重构功效对一个程序实例举行重构,目的是摸索Eclipse自动重构可以在多大程度上帮助重构这个历程.程序实例利用《Refactoring:Improving the Design of Existing Code》一书中的例子.

Eclipse的自动重构功效可以很好地支持各种程序元素的重命名,并自动更新相关的引用.Eclipse可以支持办法、字段在类之间移动,并自动更新引用.Eclipse较好地支持内联字段、函数的更新替换.Eclipse较好地支持抽取办法、变量等程序元素.

重构的历程是一个不断尝试和摸索的历程.Eclipse的重构支持撤消和重做,并且可以预览重构后果,这些是很实用的功效.

Eclipse的重命名、抽取办法、移动、内联功效、更改办法特点符等代码构造级别的重构办法,是对比成熟同时也值得利用的功效.至于计划构造上的重构,eclipse还不能很好地支持.但是作者相信,自动重构的理念应当是"工具帮助下的重构工作",人仍旧承当大部份重构工作.

1、预备工作

本文利用《Refactoring:Improving the Design of Existing Code》一书第一章的例子.重构前的代码及每一步重构后的代码见附件.读者最好配合《Refactoring:Improving the Design of Existing Code》一书阅读本文.

Eclipse利用以下版本:

同时安装了中文语言包.

2、重构第一步:分化并重组statement()

目的:

1、把statement()函数中的swich语句提炼到独立的函数amountFor()中.

2、改正amountFor()参数命名

重构办法:

Extract Method

Rename Method

办法:

1、选中swich语句的代码块,在右键菜单中挑选"重构/抽取办法",呈现参数对话框.Eclipse自动解析代码块中的部分变量,找到了两个部分变量:each和thisAmount.此中,each只是在代码块中被读取,但thisAmount会在代码块中被改正.按照重构Extract Method总结出来的法则,应当把each当作抽取函数的参数、thisAmount当作抽取函数的返回值.但是Eclipse并不做辨别,直接把这两个变量当作抽取新办法的参数,如图.

我们的目的是把在抽取函数中不会被改正的each作为参数;会被改正的thisAmount作为返回值.办理的办法是,把 double thisAmount = 0; 这行代码移到switch语句的上面,变成这样:

double thisAmount = 0;
switch(each.getMovie().getPriceCode()){
 case Movie.REGULAR:
  thisAmount += 2;
  if(each.getDaysRented()>2)
  thisAmount += (each.getDaysRented()-2)*1.5;
  break;
 case Movie.NEW_RELEASE:
  thisAmount += each.getDaysRented()*3;
  break;
 case Movie.CHILDRENS:
  thisAmount += 1.5;
  if(each.getDaysRented()>3)
   thisAmount += (each.getDaysRented()-3)*1.5;
  break;
}

选中这段代码,在右键菜单中挑选"重构/抽取办法",eclipse这次变得聪明点了,如图.


  以上是“Eclipse中自动重构实现摸索[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • Win7下Eclipse中文字体太小办理办法
  • 完善调整Ubuntu下的Eclipse字体及界面显示
  • Ubuntu 下MyEclipse和NetBeans问题
  • Ubuntu 10.04 Eclipse C/C++平台搭建
  • Ubuntu10.10配置JRE、JDK、Eclipse
  • 在Ubuntu下打造Avr-Eclipse开辟环境
  • Ubuntu(Linux)+XAMPP(LAMPP)+eclipse+PHP+XDebug 完好的开辟环
  • Eclipse+JBoss+MySQL开辟环境设置
  • Java IDE实用对比:Eclipse、NetBeans、IntelliJ
  • Eclipse插件开辟快速入门
  • Eclipse插件开辟中实现改革和重编译
  • Eclipse中自动重构实现摸索
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .