1. 先看官方文檔和架構圖 優秀的開源組件官方都會維護文檔和架構圖,這份架構圖上或許有一些最重要的組件之間的關聯關係、或許哪些功能的調用流程、或許有一些別的東西,但是相信我,這些東西一定都是從總體來描述這個項目的,這個一定是你要閱讀源碼時第一個要看的 2. 再看項目的組織結構 下載下來代碼之後,不要 ...
1. 先看官方文檔和架構圖
優秀的開源組件官方都會維護文檔和架構圖,這份架構圖上或許有一些最重要的組件之間的關聯關係、或許哪些功能的調用流程、或許有一些別的東西,但是相信我,這些東西一定都是從總體來描述這個項目的,這個一定是你要閱讀源碼時第一個要看的
2. 再看項目的組織結構
下載下來代碼之後,不要急著開始。先看一下各個包名和包里的類名,對照著文檔和類名先簡單猜一下各個類的大致作用
3. 找到啟動demo,把項目跑起來
閱讀源碼不僅僅是閱讀,要讓項目跑起來,去調試它,去觀察和改變它的運行路線
4. 找到閱讀的起點
很多人都想閱讀源碼,但是面對龐大的代碼庫不知道如何下手。這個時候你就要明確你的目標。
可以從啟動方法開始、也可以從具體的哪個功能開始。總之要找到你的起點
5. 理清主幹
一個優秀的開源軟體總是經過了很多工程師很多年的努力孵化出來的,你去閱讀它的時候很難把整個軟體全部都整明白。所以一定要認準自己的目標,朝著自己的目標去讀,當過程中出現一些不太重要的分枝時可以適當的忽略來節約時間
6. 把你的結論記下來
好記性不如爛筆頭,我們從小就知道的一句話。包括卻不限於筆記、流程圖、截圖等任何你擅長的工具,把它記下來。另外,最好總結一下重點部分速食麵試的時候快速複習
7. 閱讀時使用的小技巧
查看類的繼承體系
快捷鍵:Ctrl+H
查看方法的調用層級
優秀的源碼往往調用層級很深,當你debug到某個點卻忘掉了怎麼進來的或者說不知道哪個地方調用了這個方法,只需要在方法名上使用Ctrl +Alt+H
即可查看這個方法的調用層級
查看類UML圖
當使用Ctrl +Alt+Shift+u
會在新的標簽頁中展示當前類的UML繼承圖
這個繼承圖相比較於第一個查看類的繼承體系外還有以下優點:
- 使用UML圖形展示看起來更舒服更全面
- 支持手動排除不相關的類和介面
- 支持展示類的屬性和方法等相關信息
當你僅僅只關註UML圖時還可以使用
Ctrl +Alt+u
在當前標簽頁浮動顯示一個圖層Debug時修改變數
當你在Debug的時候可以使用Alt+F8
喚起這個界面
在這個輸入框中,你可以直接修改當前能夠看到的變數,當存在以下場景時這個功能真的是絕配- 當存在很多分支的時候修改某個變數來改變代碼運行的邏輯
不確定某句代碼結果時可以直接在文本框輸入,而不需要再次重啟程式
記住上方這7點,相信你會變得更加優秀,而我則使用這7點在一個月的時間閱讀了Spring的源碼Spring源碼解析系列彙總