Java Eclipse:最有用的重构

Java Eclipse:最有用的重构,java,eclipse,refactoring,Java,Eclipse,Refactoring,我时不时地使用Eclipse重构特性。有些技术比其他技术更明显,有些我从未尝试过 什么重构对您最有用?为什么 注意:我发现本演示非常有用,可能是因为它是示例驱动的,因此易于理解: “” 编辑:这篇文章也很有用(谢谢) 我的最爱: 更名 向上拉/向下推 提取方法 我最常用的是重命名、提取方法和更改方法签名,按顺序排列。重命名——因为给事物起有意义的名字是编写自文档代码的最佳方式。Shift+Alt+R 提取方法-每当方法过长时。Shift+Alt+M 提取常数-因为幻数是不好的。Shift+Alt

我时不时地使用Eclipse重构特性。有些技术比其他技术更明显,有些我从未尝试过

什么重构对您最有用?为什么

注意:我发现本演示非常有用,可能是因为它是示例驱动的,因此易于理解:

“”

编辑:这篇文章也很有用(谢谢)

我的最爱:

  • 更名
  • 向上拉/向下推
  • 提取方法

  • 我最常用的是重命名、提取方法和更改方法签名,按顺序排列。

    重命名——因为给事物起有意义的名字是编写自文档代码的最佳方式。Shift+Alt+R

    提取方法-每当方法过长时。Shift+Alt+M

    提取常数-因为幻数是不好的。Shift+Alt+T(重构菜单,没有直接的快捷方式)

    内联/引入变量-消除方法中的混乱。Shift+Alt+I(内联)、Shift+Alt+L(引入)

    我使用:

    1-重命名-更正更好的方法名称

    2-移动-以更好的方式组织我的包,比如当我开始我的项目时,它非常小,所以不需要io包,但现在是的

    3-生成注释-当我创建.class时,避免我重新复制GPL许可证等

    4-正确的缩进-保持我的代码可读。

    我的收藏夹(按使用顺序):

  • 重命名(
    Alt-Shift-R
    ,或
    Ctrl-1
    以加快文件重命名速度)
    良好的重命名变量、方法等,无副作用
  • 提取变量(
    Ctrl-1
    Alt-Shift-L

    用于将快速生成的100个字符行拆分为单独的步骤
  • 提取方法(
    Alt-Shift-M

    用一些代码创建一个没有任何副作用的方法
  • 拆分变量声明(
    Ctrl-1

    当您在声明中初始化变量,现在发现初始化需要在try-or-if块中时,这很好
  • 更改方法签名(
    Alt-Shift-C

    方法签名操作的便捷工具,包括新参数的默认值
  • 向上拉/向下推 将方法和变量拉到泛型接口或超类,或将其下推到子类
  • 提取接口/超类
    从当前类中提取接口或超类。非常方便

  • 在红线部分按CTRL+1键,即“快速修复”。

    已经说明了最流行的重构,我完全同意它们

    代码格式化程序(Source、Format或Ctrl-Shift-F)是我经常使用的IDE功能之一。诚然,这不是重构,但它在保持编码风格的同时提高了代码的可读性:只需转到首选项、Java、代码风格、格式化程序,然后告诉Eclipse您希望代码的外观

    生成getter和setter也是我发现在编写Java bean时节省时间的一项功能。

    我最喜欢的是:

    1) 重命名-它适用于方法名、变量名、类名、字段——实际上是任何有名称的东西。
    2) 将匿名类转换为嵌套类-有助于调试,允许您重用您认为只会在一个地方使用的逻辑(如比较器)

    3) 将成员类型转换为顶级-通常在将匿名类转换为嵌套类后,我发现该类在其他地方很有用。这种重构是完美的。

    对于所有流行的IDE,Eclipse的重构可能最少。您可以考虑NETBeBeor或iTelLJ(社区版是免费的)。相反,Eclipse可能有最好的调试器

    我在编写代码时使用了重构(我发现它可以加快15%左右的编写速度),因此IntelliJ重构代码的能力对我来说并不十分有用。其他IDE现在可能支持这一点(有人知道吗?) 我发现IntelliJ的smart complete也相当聪明

    我已经测试了从打印输出(最初写在Eclipse)中重新键入一个文件,发现在用ItTeliJ输入文件时,我使用了30%个更少的键和50%的鼠标动作(与Eclipse相比),我估计NETBESE在中间。它现在处理包含continue语句的选择

    为了保留现有代码的语义,选择需要包括循环的最后一条语句。在提取的方法中,continue语句更改为返回:

    对于在提取的方法中需要多个返回值的选择,Eclipse现在在错误消息中列出了冲突的变量:


    这是一个有趣的问题。我知道什么对我有用,看看别人用什么很有趣

    我决定采用更科学的方法来确定最常用的重构命令。Eclipse有一个内置的特性。数据是。我获取了数据并提取了下面的图表,其中显示了最常用的编辑命令(没有导航命令)


    然而,我非常相信格式化和组织导入(read)时的“保存操作”,所以我不会计算这些操作。我还将删除评论操作。图片是这样的:

    这项研究也值得一读:D.迪格和R.约翰逊

    作者注意到80%的变化是重构,并对它们进行了分类。以下是摘要:

    框架和库改变了它们的特性 API。将应用程序迁移到 新的API是乏味的,并且会中断 开发过程。虽然有些 已经提出了一些工具和想法,以便 解决API的演变,大多数 更新是手动完成的。改善 了解 迁移工具,我们研究了API 四个框架的变化