跳轉到內容

計算機程式設計原理/方法/逆向程式設計

來自華夏公益教科書,開放的書籍,開放的世界

逆向程式設計是一種透過創新的自上而下的過程,在沒有預先設計的情況下對初始應用程式或功能部分進行編碼的過程。

這種方法可以用簡單的數學樹來演示。首先,你從答案開始,比如 9。然後你決定如何得到 9,在許多可能性中,你選擇 4+5。現在你有了 9=4+5。你可以繼續用另一個數學函式替換 4 和 5。假設 4=2*2 並且 5 = 3+2,所以現在最終的公式將是 9=(2*2)+(3+2)。這個過程可以無限進行。重點是,你事先不知道如何得到 9,但能夠立即開始,而無需規劃。

在軟體開發中,你可以從最終結果開始,在每個向後工作的階段,你可以使用常量,然後用函式或物件等替換這些常量。

這種方法的優點是它有助於避免“過度設計”,因為向後每一步的選擇通常是最簡單的。

逆向程式設計由威廉·埃格發明,他通過錄制程式碼編輯影片並進行回顧來開發的。他受到複雜問題帶來的困難和壓力的啟發,希望找到一種更容易的、能夠“流暢”的方法,而無需事先設計。

華夏公益教科書