如何快速閱讀源代碼

 

這篇文章,是對我本身經常使用閱讀源碼的習慣的總結。html

(零):先作備份算法

當拿到一份源代碼,無論是工做上臨時接手的項目仍是平時在網站上down下來的demo,若是想要徹底看懂,每每須要作一些改動,有時候改動的比較多就會忘了原來的代碼是什麼樣的,所以我建議,獲得一份新的源代碼後首先應該進行備份。架構

(一):編譯跑一遍框架

當拿到了一份新的源代碼,我不知道他的做用是什麼,那麼最好的辦法就是先把軟件編譯之後跑一遍。若是發現軟件編譯時出錯,那麼顯然,這不是一個好的源代碼,這也就提不上快速閱讀了,慢慢踩坑纔是王道。post

(三):梳理數據的前因後果學習

計算機的最大做用是用來計算的,既然是要計算,那麼就要有數據的輸入和輸出,例如我是作機器人的,工控機和下面單片機有着各自的任務,那麼只要我找到工控機和單片機通訊的部分,我就就能夠經過通訊的數據一步步查找數據的處理方法,最後獲得一條數據從輸入到輸出的鏈路,這樣雖然鏈路中每個調用的方法我不必定知道它是具體如何實現的,可是我能夠大體獲得每個方法的做用。網站

(四):閱讀代碼寫註釋spa

前面說的是比較粗略的作法,接下來要專一細節,就要閱讀方法中的每一行代碼,對於具體的方法,最好是有着算法文檔,否則有一些代碼,很難看明白,例如我學習牛頓迭代法時曾經見過使用該方法開方的代碼,若是沒有算法文檔,絕對看不明白它的做用。debug

若是趕上沒有算法文檔的項目,那就只能本身硬看了,個人建議是每行寫註釋,這個有助於分清自寫代碼,結構代碼,程序自帶代碼和第三方庫的API。程序自帶代碼指的是相似MFC這樣的框架生成時本身出現的代碼。結構代碼是由項目架構工程師寫的,方便分工合做而使用的代碼。分清這四類代碼後就會發現,自寫代碼和調用第三方庫每每是核心,可是剛開始最讓人搞不懂的,是程序自帶代碼和結構代碼htm

(五):本身嘗試進行修改

俗話說,輸出是最好的學習。在我大學的時候,個人導師跟我說,你學習一份代碼,感受差很少了就上手改,若是改完的代碼成功的跑了起來而且實現了你預期的功能,那麼你就能夠說已經學會了。所以我建議,對於一個源代碼,到了最後的學習方法就是本身上手修改,在debug中學習是最快的,

相關文章
相關標籤/搜索