问题标签 [automated-refactoring]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2369 浏览

java - 使用 IntelliJ IDEA 批量重命名方法

我有一个包含许多(大约 40 个)方法的类,其名称在SCREAMING_CASE_LIKE_THIS.

有没有一种快速的方法,也许通过代码分析/检查,将所有这些重命名为更惯用的名称camelCaseLikeThis

0 投票
4 回答
16408 浏览

intellij-idea - Intellij Idea 如何为类添加接口实现?

例如,我有很多类而不是实现我的接口。在接口中添加新方法定义后,如何为所有类快速添加空白接口实现?

0 投票
2 回答
679 浏览

java - 带有 Java 的 Netbeans:将所有方法设置为静态

我正在开发 NetBeans 上的 Java 项目。

在某些时候,我有几个不是静态的变量和方法(比如说,大约二十个)。我想将它们全部重构为静态的。我该如何继续呢?netbeans可以做到吗?

例子:

当我单击某处或按下某些按钮时,我希望以前的方法变为:

例子:

一次全部。

--

另一个常见的变体:假设我已将所有方法设置为公开,但我不再想要它了。我怎样才能将所有方法重构为私有(所以以后我可以只将我认为必要的更改为公共)?

0 投票
1 回答
2799 浏览

python - 自动简化/重构 Python 代码(例如 for 循环 -> 列表理解)?

在 Python 中,我真的很享受使用列表推导时实现的简洁性。我喜欢做简洁的列表理解:

但是,我经常遇到像这样更冗长的实现:

当 afor loop只查看一个数据结构(例如myList[])时,通常有一个直接的列表理解语句,它等效于循环。
考虑到这一点,是否有一个重构工具可以将冗长的 Python 循环转换为简洁的列表理解语句?


以前的 StackOverflow 问题已要求有关将循环转换为列表理解的建议。但是,我还没有找到关于自动将循环转换为列表理解表达式的问题。


动机:有很多方法可以回答“代码干净意味着什么?”这个问题。就个人而言,我发现使代码简洁并消除一些绒毛往往会使代码更清晰和更具可读性。在“简洁的代码”和“难以理解的单行代码”之间自然有一条界限。尽管如此,我经常发现编写和使用简洁的代码是令人满意的。

0 投票
1 回答
949 浏览

android - Eclipse Android 包重构失败 - 内部错误

我正在尝试使用 Eclipse 中的 Android 工具 > 重命名应用程序包选项来测试我对平板电脑上 FBReaderJ 的更改,同时保持官方版本可用。当我使用此命令并输入新名称时,出现错误:

在错误日志中,我有:

堆栈跟踪:

会话数据:

我对 Android 很陌生,我不知道从哪里开始。似乎是一个非常相似的问题,但我无法弄清楚user756905建议应该尝试什么......

欢迎提出任何建议,特别是如果在我尝试重新安装 Eclipse 之前有什么可以尝试的。

0 投票
2 回答
742 浏览

combobox - 为什么 Resharper 认为这些枚举从未使用过?

我有这些枚举:

Resharper 的检查告诉我所有这些“从未使用过枚举成员 'XSmall' [等]”

然而,我在组合框中使用它们,如下所示:

...那么为什么 Resharper 被愚弄了?或者是吗?

0 投票
2 回答
4316 浏览

xcode5 - Xcode:如何重构/重命名方法并添加(或删除)其参数?

Xcode 5 是否能够更改方法的签名?据我所知,不,但我想被错误地展示。

如果我尝试添加(或删除)方法的参数,我会受到Needs 1 fewer (more) colon to match original错误的欢迎。

在这种情况下,我真的必须进行手动重构吗?

0 投票
3 回答
6457 浏览

javascript - 在 JavaScript 中重命名变量

我一直被“取消”缩小的 JavaScript 代码文件这一令人不快的任务所困扰。使用 JSBeautifier,生成的文件大约有 6000 行长。

通常,变量和参数名称会永久丢失,但在这种情况下,我有一个过时版本的原始文件,从该文件生成了缩小的 JavaScript 代码文件。这个过时版本的原始文件包含大部分代码注释和变量名,但绝对不能用来代替当前版本。

我想知道是否有某种方法可以重命名 JavaScript 中特定参数或变量的所有实例。由于缩小将名称减少为单个字符,因此不可能进行查找和替换。

是否有一些工具,我可以告诉,在这个文件中,a函数的参数foo应该是clientName并且让它在语义上将该参数的所有实例重命名为clientName

不幸的是,我为一个拥有批准的软件列表的大型组织工作,并且在可预见的未来(没有 VS 2012)我坚持使用 Visual Studio 2010。

更新: @Kos,我们不使用 Git,但我们使用源代码控制。问题是不再为我的组织工作的开发人员一旦对文件进行了更改,将其缩小,并且仅将缩小版本签入源代码控制,因此他对原始文件的更改已经丢失。

0 投票
2 回答
438 浏览

eclipse - 在不使用内部类的情况下创建自定义 CDT 重构

我正在尝试使用 Eclipse Indigo 和 CDT 8.0.2 编写自定义 C++ 重构。CDT 提供了一个类 ,CRefactoring2它获取 AST 并提供挂钩。但是这个类在一个内部包中,所以我认为它会在未来的 Eclipse 版本中发生变化,并且我不应该对它进行子类化。

是否有一个外部 API(在 CDT 内;我不想从头开始编写所有获取 AST 的代码)我可以用来获取 AST 并声明我自己的 Eclipse CDT 重构?

0 投票
2 回答
1061 浏览

xcode4.6 - 无法在 XCode 中重构类名

.xib我正在尝试通过 XCode 的重构工具重命名视图控制器(具有关联文件)的类名。输入新名称后,我收到此错误消息(没有更改预览):

选择不是可以重命名的类型。

做出不同的选择,然后重试。

我已经尝试了这个 SO线程中的所有建议,但没有运气。

当其他类和变量可以毫无问题地重构时,什么会阻止 XCode 能够重构一个类(和相关的文件名)?