資料內(nèi)容:
為什么要看源碼:
1、提升技術(shù)功底:學(xué)習(xí)源碼里的優(yōu)秀設(shè)計(jì)思想,比如一些疑難問(wèn)題的解決思路,還有一些優(yōu)秀的設(shè)計(jì)模式,整體提升自己的技術(shù)功底
2、深度掌握技術(shù)框架:源碼看多了,對(duì)于一個(gè)新技術(shù)或框架的掌握速度會(huì)有大幅提升,看下框架demo大致就能知道底層的實(shí)現(xiàn),技術(shù)框
架更新再快也不怕
3、快速定位線上問(wèn)題:遇到線上問(wèn)題,特別是框架源碼里的問(wèn)題(比如bug),能夠快速定位,這就是相比其他沒(méi)看過(guò)源碼的人的優(yōu)勢(shì)
4、對(duì)面試大有裨益:面試一線互聯(lián)網(wǎng)公司對(duì)于框架技術(shù)一般都會(huì)問(wèn)到源碼級(jí)別的實(shí)現(xiàn)
5、知其然知其所以然:對(duì)技術(shù)有追求的人必做之事,使用了一個(gè)好的框架,很想知道底層是如何實(shí)現(xiàn)的
6、擁抱開(kāi)源社區(qū):參與到開(kāi)源項(xiàng)目的研發(fā),結(jié)識(shí)更多大牛,積累更多優(yōu)質(zhì)人脈
看源碼方法:
1、先使用:先看官方文檔快速掌握框架的基本使用
2、抓主線:找一個(gè)demo入手,順藤摸瓜快速靜態(tài)看一遍框架的主線源碼,畫(huà)出源碼主流程圖,切勿一開(kāi)始就陷入源碼的細(xì)枝末節(jié),否則
會(huì)把自己繞暈,憑經(jīng)驗(yàn)猜
3、畫(huà)圖做筆記:總結(jié)框架的一些核心功能點(diǎn),從這些功能點(diǎn)入手深入到源碼的細(xì)節(jié),邊看源碼邊畫(huà)源碼走向圖,并對(duì)關(guān)鍵源碼的理解做
筆記,把源碼里的閃光點(diǎn)都記錄下來(lái),后續(xù)借鑒到工作項(xiàng)目中,理解能力強(qiáng)的可以直接看靜態(tài)源碼,也可以邊看源碼邊debug源碼執(zhí)行過(guò)
程,觀察一些關(guān)鍵變量的值
4、整合總結(jié):所有功能點(diǎn)的源碼都分析完后,回到主流程圖再梳理一遍,爭(zhēng)取把自己畫(huà)的所有圖都在腦袋里做一個(gè)整合