|
|
1
11
我发现Eclipse对于这样的操作来说是一个非常强大的工具。 很多人都相信命令行工具和基于模式的文本编辑器可以用于编程,但使用完整的IDE进行主要重构有很大的优势:
编辑: 我个人也更喜欢Eclipse,因为我是进行重构的人,而不是那些对我的代码一无所知的自动化工具。 |
|
|
2
6
tool 对项目中的源代码强制使用通用格式。除此之外,看看迈克尔·费茨 (其中“遗留代码”定义为“没有单元测试的代码”),它描述了如何逐步将遗留代码转换为完全测试和可测试的代码。 |
|
|
3
3
|
|
|
4
3
从单块类开始,将它们分解(超过500个语句,不包括注释和只有大括号的行)。引入接口,然后引入依赖注入。 |
|
|
5
2
我已经经历了好几次这个过程,我发现解决方案需要知道以下几点:
“一套一致的编码标准将导致: -减少30%的错误 -维护成本降低80% -我们100%的编码人员都会对这种变化感到高兴。”
显然,除非你已经从目前加入到项目中的人那里得到了支持,否则开始这项工作是没有意义的。每个人都必须同意并开始将这些理想重新融入当前存在的代码中。请记住,并不是每个人都使用IDE(例如,我在VIM中编写了所有java代码),所以您应该确保wiki上规定了这种格式,以供所有人(特别是新的团队成员)查看,并且wiki页面上有供正在使用的各种编辑器使用的下载。 因为我们很有可能不仅讨论代码格式,而且还讨论变量重命名和模式更改,这些都会影响类的公共api,所以您确实需要确保有一组非常稳定的测试用例。如果缺少测试用例,那么您应该始终从外部开始对您的测试建模,以便它们与您的用户进行交互。然后你就可以满怀信心地进行重构。一旦你有了与你的梦想相似的代码,你就可以在每个对象附近添加测试。创建所有的测试用例,然后更改API,然后不得不更改所有的测试用例,没有什么比这更痛苦的了;每次我看到这种情况时,都会导致测试覆盖率的大幅下降。 |
|
6
1
我的建议是在构建系统中添加类似Checkstyle的内容。很难让管理层接受一次彻底检修的想法。设计您认为是一组好的样式准则,并在Checkstyle中实现它们并将其添加到构建中。
另外,Eclipse也有checkstyle插件。 |
|
|
7
0
这是一个相当普通的任务,不是很快乐,但也不是一个噩梦。。。如果用其他语言编码(Perl、PHP、C++、-GASP—VB……),情况可能更糟。;实际上,Java是最适合您的场景之一。
当缺少文档时,IDE(和静态编译)有助于了解谁在使用哪个类或方法,并且您可以非常自信地进行重构。但首先要确定反射使用的层/包/类(由代码显式地使用,或由框架隐式地使用,例如一些getter和setter)。 有很多书致力于“重新设计遗留软件”和相关问题。 |
|
|
8
0
我同意那些推荐maven build、eclipse、Checkstyle、大型类重构等的人的看法。我理解在开始工作之前,您无法实现完整的测试覆盖率。我建议你 一。使用checkstyle或类似工具在批处理模式下重新格式化代码 三。使用缺陷驱动的自动测试,即为要更改的模块开发测试。 祝你好运! |
|
|
9
0
我还建议使用IDE的特性来提高代码质量。对于eclipse,我要做的是: 在首选项java>代码样式>格式化程序中-定义您自己的格式并添加它。之后,右键单击项目和源<clean up。选择sustom profile并配置。这里有很多事情可以做,比如代码格式化清理导入,将遗留for循环转换为增强循环,清理未使用的代码等等。
|
|
benbotto · 多个网站,单个代码库:git fork? 8 年前 |
|
|
Peter · 检测变量是否为模式[重复] 8 年前 |
|
Andrew McKinley · Swift中无法识别C指针数组 10 年前 |
|
|
Patrick · 在框架中包装旧应用程序 10 年前 |