2012-02-10 43 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,它將打開聲明元素的源文件並顯示聲明。

你應該總是做前兩個;最後只是一個方便。

相關問題