我们有相当多的代码刚刚跳转到Java 5,我们一直在Java 5版本中使用泛型,目标是在Java 5版本中发布,但是剩下的代码当然都是原始类型。我已经将编译器设置为为原始类型生成一个错误,并开始手动清除它们,但按照目前的速度,需要很长时间才能完成(大约有2500个错误)。这就是Eclipse的有益推断--泛型Type快速修复,它总是能够消除错误,但通常会生成需要进一步工作的代码。
有什么更好的方法来处理这件事吗?有比Eclipse更好的自动化工具吗?有没有办法将重构应用于所有发生的事件,而不是一个接一个地进行?还是你忽略了这些警告?
发布于 2008-10-20 17:14:52
据我所知,你正在尽可能高效地做这件事。这显然不完美,但你最终会完成的。
不过,我建议您分阶段进行;代码中可能有一些部分比其他部分受益更多,请关注这些部分。试图在一次扫描中完成这一切,就有可能在代码中引入新的bug。我们有一个这样的地方,我们有一个集合,它保存与上下文相关的数据,而泛型实际上不能用于它。
基本上,做你正在做的事情,但作为其他工作的一部分,分阶段完成,而不是一次解决所有问题。
发布于 2008-10-20 17:43:30
面对类似的挑战,我们选择只在出于另一个原因编辑的代码中升级到Java 5样式的泛型。因此,如果要修复DoItFast.java中的bug,请更新DoItFast.java以使用Java5样式的泛型。定期编辑和更改的代码区域将很快更新。经过几周或几个月的这种行为之后,您可以重新评估代码库的状态。
如果这不能让你的工作完成得足够快,有时我会利用午餐后的缓慢时间,盲目地清理几堂课,加快学习的速度。
发布于 2008-10-20 17:13:14
我不认为有必要更新所有的旧代码。也许您可以以某种方式识别旧代码的哪些部分被频繁使用,并且只更新这些部分以使用泛型类型?或者只有当原始类型从公共函数中返回时,您才会担心?这些情况中有很多可能只是私有/局部变量,这些变量已经没有泛型类型,而且可能工作得很好,所以重写它们可能不值得。
https://stackoverflow.com/questions/219164
复制相似问题