并不推薦一上來就是看源碼,一般是當(dāng)你在某個方向上有一定的基本知識積累了才開始去嘗試閱讀。譬如c 服務(wù)器的后臺代碼,當(dāng)然是需要對 linux 下的網(wǎng)絡(luò)/系統(tǒng)編程有一定的認(rèn)識,甚至讀過 W.Richard Stevens 的幾本經(jīng)典之作。譬如 Django Web 框架,當(dāng)然是需要對 Python 和 Web 方面有一定的認(rèn)識。不然,完全的新人去閱讀代碼,只會信心受打擊。
推薦每一位初學(xué)者在某一技術(shù)方向上有基本的積累后,可以找一個優(yōu)秀的開源項目,并試著閱讀。不懂沒有關(guān)系,既然是優(yōu)秀且開源的項目,網(wǎng)上必定會有很多的資料以及文檔,這些都能為你讀懂源碼提供很多的幫助。你會有很多的收獲,首先可以見識業(yè)界的編程規(guī)范如何,這是程序員的基本素質(zhì);可以接觸到一些優(yōu)秀的框架或者模式,這些是前人在大量的實踐中總結(jié)出來的,必定是行而有效的,夯實你在某個技術(shù)方向上的認(rèn)知;最后,就是練就你的耐心和毅力了。閱讀源碼本身是枯燥乏味的過程,我經(jīng)??匆粋€模塊一兩天,來來回回往往復(fù)復(fù),假使心浮氣躁,容易淺嘗輒止,半途而廢。