当前位置: 首页 > 面试题库 >

如何重构数千行Java代码?有没有可用的工具?

应安国
2023-03-14
问题内容

在我们的应用程序中,我们有两个或三个类,它们包含整个Java Swing应用程序逻辑。这两个或三个类包含大约7k行代码。

现在,我被分配了重构此Java代码的任务。

我该如何开始?有没有可用的工具可以进行重构或至少可以指导我们?


问题答案:

我假设您正在尝试将这些大类分解为较小的类。最常见的方法是使用Extract类重构。碰巧这是我博士论文工作中的一个主要主题。

困难的部分之一是确定新课程的内容。我知道该帮助有两个公开可用的工具-ExtC(我的工具)和JDeodorant。两者都是Eclipse插件,我将它们都归类为原型。如果您想尝试使用我的工具,我们将很乐意为您提供帮助。

一旦确定了应该进入新班级的内容,就必须完成将班级划分为其他班级的实际工作。Eclipse的Extract
Class重构被错误命名,并没有真正的帮助。IntelliJ的IDEA更好,但仍然存在一些错误。JDeodorant也可以执行拆分,但是它也存在一些错误。



 类似资料:
  • 问题内容: 我正在使用Retrofit,并且在每个任务中我都必须执行以下操作: 使此代码成为DRY的好方法是什么? 问题答案: 首先,您以所有常见行为声明父类 然后,您将其扩展到每个任务 但是我不知道您在哪里使用restAdapter和apiManager,以及如果实际上每个任务需要创建一次,因为您可能可以在这些任务之外创建它。 如果在外部创建它们,然后需要在任务内部使用某些东西,那么牢记Depe

  • 现成的工具网站,比如常用的工具类。完整的代码,可以直接用的。提高效率。 或者在线工具网站也行。 一些常见的代码,直接百度搜的话,会出来一些乱七八糟的,还需要挑挑选选才可以。非常浪费时间。 我经常用的工具网站。 https://tool.share888.top/

  • 求推荐一款git代码统计工具,能看到 代码的提交统计。比如:最近一周 项目的各成员,提交了多少代码,提交次数,提交代码行数,新增数量,删除数量。 看过 gitstat ,但总感觉用起来有点麻烦。

  • 问题内容: 这个问题已经在这里有了答案 : 7年前关闭。 可能重复: 从Java访问scala.None 在Java中,您可以使用构造函数创建一个实例,即,但没有伙伴类。如何从Java 传递给Scala函数? 问题答案: 我认为这个丑陋的方法会起作用: 不需要新实例,因为一个实例与另一个实例一样好…

  • 但是,如果我在两个连续的'>'字符之间放置空格,则不会产生错误。ANTLR无法区分上述规则和用于识别移位表达式的规则,但我不知道如何修改语法来解决这种歧义。如有任何帮助,不胜感激。

  • 我对这个例外很困惑。有人能帮忙吗? 我使用的是Spring Boot 2.1.6。release和shiro-spring-boot-starter 1.4.0。