1.畫框架圖致开,了解有多少模塊甲雅,模塊分別處于哪一層解孙。
2.畫序列圖坑填,畫出每個上層接口調(diào)下來分別調(diào)用了那些模塊的哪些接口完成功能。
3.打印日志弛姜,通過打開verbose級別log穷遂,抓取功能運行起來的輸出LOG,然后對應(yīng)Code來找到調(diào)用的主path和相關(guān)狀態(tài)成員的變化娱据。至此蚪黑,在框架發(fā)生問題時,進行基礎(chǔ)的調(diào)試定位工作中剩。
4.了解代碼完成的功能和code主Path后忌穿,分模塊來細嚼慢咽,通過一個調(diào)用path上下文來看结啼,其中一個模塊的實現(xiàn)邏輯掠剑,每次只看一個模塊,通常是從比較底層模塊開始看起郊愧,逐步向上層朴译。可以通過畫出數(shù)據(jù)或者狀態(tài)流程圖來加深理解属铁。
5.學習模塊代碼時眠寿,及時記錄下生或疏的知識點或者狀態(tài)變化復(fù)雜的行為邏輯。
6.帶著之前學習path或者模塊時的疑問來深入review一些細節(jié)代碼或者path焦蘑。
7.回過頭審視整個框架的設(shè)計盯拱,包括模塊和分層的架構(gòu)設(shè)計,有什么規(guī)律或者好設(shè)計思路例嘱。
8.整體學習思路是從顆粒度大到小狡逢,最后回來到整體review架構(gòu)。