我的情况是我有“进步”类 - 问题是我有兴趣合并一些也有“进步”类的开源。我记得非常模糊地提到了一个应用程序,该应用程序能够检查开发中的各种文件以获取给定的类名......然后返回它......或更改它。你有这方面的经验吗?
谢谢
我的情况是我有“进步”类 - 问题是我有兴趣合并一些也有“进步”类的开源。我记得非常模糊地提到了一个应用程序,该应用程序能够检查开发中的各种文件以获取给定的类名......然后返回它......或更改它。你有这方面的经验吗?
谢谢
某些语言(C++、C#)有命名空间的概念。Java有包。Python有模块。它们旨在防止类名冲突。假设您在谈论 Java,名为“Progress”的开源类可能在它自己的包中,而您的“Progress”在您自己的包中。因此,也许您并没有像您想象的那样遇到问题。
话虽如此,我猜您是在询问 IDE 中称为重构的功能,该功能允许您在任何引用或依赖它的地方更改类名。
许多 IDE(例如 Eclipse)可以做到这一点,但 Java 比 PHP 更常见。由于 PHP 变量的动态特性,IDE 很难准确地知道要更改什么。例如,您可以这样做:
$name = "prog";
$name .= "ress";
$cls = new $name();
IDE 必须实际运行您的应用程序才能知道 $name 在特定时刻包含“进度”。即使那样,也没有办法自动修复它。
可悲的是,您陷入了查找和替换的困境。不过不用担心;在开发过程中更改类名是一件好事。它迫使您重新思考该课程的确切用途。
始终使用产品/项目缩写作为类名的前缀。为什么不使用 TextPad 替换所有匹配项?这样你以后就不会混淆它是哪个类了。我还建议使用命名空间/包技术,但这会让你重写我假设的很多代码。
http://en.wikipedia.org/wiki/Code_refactoring 上面的链接有一些用于重构的工具。