當前位置: > 行業資訊 > 幫助你克服新手程序員最怕的事情

幫助你克服新手程序員最怕的事情


發布時間:2014-11-25 12:30:19

 朋友Casey問我:“對于初級程序員,應該怎樣閱讀大型代碼庫呢?”我認為這是一個很好的問題,要想成為一個優秀的開發者,閱讀代碼庫并弄清里面的內容是十分重要的。(對于新手程序員,PHP100還有這些可以幫助你:如何學好數據結構和算法,如何給程序中的變量起個好名字)在你的職業生涯中,你很可能會中途加入一個項目,并要學會正在進行的任務?;蛘吒鼮榭植赖氖怯幸粋€項目丟給你了,讓你自己一個人搞清楚。

       最壞的情形就是讓你重寫那些原來失敗的代碼,靠你的努力讓項目再次運轉起來。但更為常見的就是讓你去維護一個之前員工寫的代碼庫,但不幸的是那個員工已經離職了。當然,如果你正在參與一個開源項目,你很有可能會被要求去擴展它,做一些其它的功能。

       尤其是新手程序員,我強烈建議你們閱讀代碼庫,下面的文章是我這樣做的故事,然后你要更向前一步。
 


       在我剛接觸到新的代碼庫時,我常常會忽略文檔和一些外部的細節,我不想有先入為主的意思,我就是想從文件結構上理解整個的項目結構,這個就能讓我讀懂很多,我經常會這樣做,發現項目的結構,看看哪部分是項目的核心?看看項目是如何分解的?等等。

       緊接著,我會開始閱讀最底層的代碼,不管排序,找到一個文件然后通讀它,再換下一個,一直持續下去。這期間,我會記筆記,幫助我理解這些內容是如何連接在一起的,更重要的是我希望能找到對這些代碼的感覺。有很多代碼常常是項目風格的一部分,比如預處理檢查,日志記錄,抓取錯誤等等。完全可以先單獨了解這部分內容,以后就只讀有意思的那些部分。

       我通常不會在某一點上閱讀太深,我會先從宏觀上對它進行把握,比如一個文件通過調用Y和Z返回了X,但在這個點上閱讀每一個細節真的不是很重要。我會記很多的筆記,有時候它不像筆記,而是一系列的問題,隨著我對它的理解,我會補充并回答這些問題。在閱讀完最底層的代碼后,我會做一個縱向的比較,讓我能理解它們是如何分布和工作的。這就意味著我在下一次閱讀它時,我會有對在結構方面有更好的理解。

       接下來,我會直接跳到我感興趣的部分,這些內容可能會很多,但不意味著你要做的有很多。我就是通讀代碼,主要是要找到結構。然后細致地去研究獨特的部分,看看它是如何寫的。

       在這一期間,尤其是遇到難點的時候,我會試圖尋找任何存在的文檔。當然,如前文所述,你要先知道代碼的結構,這樣就可以更好更快地閱讀文檔。

       希望上面的講述可以幫助你閱讀大型代碼庫。





原文:http://java.dzone.com/articles/reading-large-codebases
譯文:http://www.php100.com/html/it/focus/2014/1124/7890.html
(翻譯:PHP100_Zeroing)

< 返回

在線客服

ONLINE SERVICE

400-889-7654

一级特黄录像免费播放中文版