如何更有效地學習開源項目的代碼?

說說我的開源學習經歷:

1、下載源代碼之后,首先要跑起來。編譯通過、正常運行。
2、在你覺得最有可能的運行到的地方,設置斷點或者拋出異常,這樣,就能夠找到一個項目在正常運行時的入口點。
3、從入口點所在的那個源文件開始閱讀,逐步把握整個項目是如何啟動起來的。
4、隨便改點代碼,看看會不會報錯,如果報錯,會從哪里報錯。
5、試著把報錯屏蔽、修復、或者繞開。
6、嘗試理解一個系統的內部結構,多少組成部分,主線模塊是哪些?輔助模塊是哪些?
7、從實際需要出發,修改這個項目,滿足自己的某一個小的需求。

在此之前,盡量不要在網絡上找答案。

8、看看相關的討論與心得,看看是否與自己的理解相一致。
9、提交bug fix或者某個新的功能代碼。

在學習開源的過程中,有幾個方面,會獲得大量的收獲:

1、架構與模式
2、開源社區常見的一些慣用法
3、相關領域的結構與算法

總結一點是:學習開源,就盡可能在代碼里找答案,而不是在代碼之外找答案,那些都是二手的,而且很可能是不準確的。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 聽到過有這樣一句話,“學習開源,就盡可能的在代碼里找答案,而不是在代碼之外去找答案,那些都是二手的,而且很可能是不...
    因酷時代閱讀 670評論 0 1
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,845評論 25 708
  • 我見過一場大雪 潔白無瑕,晶瑩剔透 輕盈飄下,落紙成畫 從遠方吹來,于身旁融化 縱使步履向前,心中依然牽掛 微微一...
    sheep_sean閱讀 259評論 0 0
  • 我是142號星寶寶梁善惠,正在參加日記星球21天蛻變之旅的寫作訓練。 2017.4.12 星期三 陰 爬樓聽...
    梁姑娘悅閱讀 256評論 0 1