2010-07-22 53 views
1

(如果您認爲StackExchange或其他地方的其他站點是問這類問題的更好位置,請指向正確的方向。)找出軟件邏輯的方法/工具?

有經驗的開發人員如何確定現有代碼應用程序的工作,才能夠修改/添加到它?

有沒有一種更有成效的方法比直接用筆/紙一行一行地瀏覽,直到找出來爲止?我覺得這很耗時間,很難保持大局,不會因細節而迷失方向。

例如,是否有一些應用程序可以解析源代碼並以某種方式繪製一個圖表來顯示某種可縮放故事板中的邏輯?

謝謝。

回答

0

你不會找到一個解決所有語言和系統的工具。請明確點。

另外,請看看atearlierquestions(搜索例如「工具瞭解遺產」)。

2

難道還有比 通過一行行要與 筆/紙得心應手,直到你看着辦吧 出更有效的方式?

實際上,「鉛筆&紙」是瞭解應用程序工作原理的最佳方法。任何工具都可能加快這個過程,但不會給你任何普遍的答案 - 你仍然需要分析圖片,分析花費的時間遠遠多於繪製圖片的時間。

如果你有在方法的興趣,我使用以下方法:

  1. 查找應用程序(其中用戶請求進來或類似的)的「頂級」之分;

  2. 通過代碼向下挖掘到您需要的級別。

通過線貫穿整個代碼行去幾乎不再需要了解一些軟件過程的整體程序,只需要頂層元素,分解,直到在分析中使用的黑盒子是足夠小,明白了什麼你需要。永遠不要試圖分解你看到的任何「黑匣子」,直到你真的需要更小的細節。在你開始添加和修改代碼之前,這真的很少需要。目標是要知道在哪裏找到開始修復或實現新功能的點,而不是記住任何組件中的每一行代碼。