本節書摘來異步社群《開源思索集》一書中的第2章,第2.1節,作者: 莊表偉 責編: 楊海玲, 更多章節内容可以通路雲栖社群“異步社群”公衆号檢視。
開源思索集
說說我的開源學習經曆:
1.下載下傳源代碼之後,首先要跑起來。編譯通過、正常運作。
2.在你覺得最有可能的運作到的地方,設定斷點或者抛出異常,這樣,就能夠找到一個項目在正常運作時的入口點。
3.從入口點所在的那個源檔案開始閱讀,逐漸把握整個項目是如何啟動起來的。
4.随便改點代碼,看看會不會報錯,如果報錯,會從哪裡報錯。
5.試着把報錯屏蔽、修複、或者繞開。
6.嘗試了解一個系統的内部結構,多少組成部分,主線子產品是哪些?輔助子產品是哪些?
7.從實際需要出發,修改這個項目,滿足自己的某一個小的需求。
在此之前,盡量不要在網絡上找答案。
8.看看相關的讨論與心得,看看是否與自己的了解相一緻。
9.送出bug fix或者某個新的功能代碼。
在學習開源的過程中,有以下幾個方面會獲得大量的收獲:
1.架構與模式
2.開源社群常見的一些慣用法
3.相關領域的結構與算法
總結一點是:學習開源,就盡可能在代碼裡找答案,而不是在代碼之外找答案,那些都是二手的,而且很可能是不準确的。