2012-02-10 92 views

回答

3

至少有一些IDE可以通过您当前的项目搜索特定变量,函数调用等的所有实例。如果您正在使用IDE,请检查它的帮助。

如果您使用的是* nix的系统,你可以使用grep搜索:

grep do_something *.php' 

以上会搜索当前的工作目录中的所有文件中的文本“do_something”与” .php结尾' 延期。您可以扩大此使用find command搜索当前目录的所有子目录:

find . -name "*.php" -exec grep do_something {} \; 

使用“grep的人”和“人找到”从你的* nix命令行来了解更多信息。

如果您使用的是Windows,我相信find command可以做类似的事情,我不熟悉它,但基本的语法应该是这个样子:

find "do_something" *.php 
+1

+1虽然'grep -Ri“do_something”。/'可能是一个更容易的grep解决方案 – danlefree 2012-02-10 13:59:06

+1

@danlefree:在很多年前开始使用非gnu * nix时,我一直习惯于使用find并忘记(gnu)grep有一个递归选项。也就是说,我刚刚测试过并且'find ... -exec grep ...'返回的结果比grep -R ...快得多(秒数与分钟数)。 – GreenMatt 2012-02-10 14:52:05

+1

我的结果显示'grep -Ri'花了2.487s(与'find'的5.581s)搜索ext4文件系统上的大约38MB文件,这是一个非常常见的静态类名称......也许系统的细节考虑到? – danlefree 2012-02-10 17:40:07

3

三种方法可以做到这一点:

  1. 使用合理的目录结构和应用程序设计。如果您遵循OOD并且有清晰的目录结构,那么应该很容易找到任何类和它的方法的声明。如果该方法是在父类中声明的,则只需扫描继承树。如果,OTOH,你正在写意大利面代码并使用大量的全局函数,那么......你遇到了更大的问题。

  2. 请参阅文档。任何大规模的应用程序都应该有一个记录良好的API,它至少应包含所有类及其成员函数和属性的列表。 API文档还应该告诉你每个类在其中定义的文件。在API中进行快速搜索会调出你需要的信息。

  3. 使用像Eclipse这样的智能IDE来解析代码和类定义。 Eclipse有一个Open Declaration function,它将打开声明元素的源文件并显示声明。

你应该总是做前两个;最后只是一个方便。

相关问题