前期工作
- 確定閱讀目標炕矮,想要了解哪一方面的技巧或者實現(xiàn)原理。
- 了解程序的用途匹摇,所包含的功能,分析各個部分之間的關(guān)聯(lián)以及可能涉及到的底層技術(shù)甲葬。
- 最好先學會使用此程序廊勃,比如編寫測試代碼等。
- 繼續(xù)從宏觀上分析代碼結(jié)構(gòu)经窖,有多少進程坡垫,有多少動態(tài)庫,有哪些界面代碼画侣,各部分的功能冰悠。
- 代碼使用何種語言編寫,用到了哪些第三方庫或者框架配乱。
- 了解源碼存放的結(jié)構(gòu)與功能的對應(yīng)溉卓,各個模塊工程之間的調(diào)用關(guān)系。
- 搭建一個可調(diào)試跟蹤的環(huán)境搬泥。
中期工作
- 可通讀code桑寨,區(qū)別核心與輔助部分
- 了解各個模塊的接口
- 優(yōu)先核心代碼,跟蹤調(diào)試忿檩,了解執(zhí)行路徑尉尾。
- 分析涉及到的數(shù)據(jù)結(jié)構(gòu)
- 分析涉及到的算法
- 分析程序運行時的內(nèi)存分配
- 拆解,對關(guān)心的子功能單獨跟蹤
后期工作
- 完成代碼注釋
- 關(guān)鍵技術(shù)或技巧總結(jié)
- 書寫技術(shù)說明文檔