今天有小夥伴羣裏問我該如何讀源碼,問題和解答以下,但願對你們有幫助:react
問題:那如何正確的看源碼,最近想看redis,不知道從哪方面下手。git
回答:你首先要知道你要看的源碼作了什麼,是你的話該如何作,帶着這種思考再去看,從頂層的設計開始,摸清總體節奏,也就拿到了骨架,而後再豐富細節,也就是代碼細節。我本身的話 如今是培養出了語感,基本上看到代碼大概就知道對方下一步該怎麼設計,怎麼實現,誤差很小。github
無論怎樣,仍是要多看,不要怕,語言是用來表達的,代碼就是最好的教程,不少優秀的代碼庫都是抄的,這個我在解讀reactor-netty
庫的時候,有將它和Reactor
的代碼設計作對比,很明顯的設計抄襲,Springcloud function
這個組件,說實在的也是函數式技法的總結使用,這些技法在reactor
reactor-netty
webflux
中都有大量的實現,因此Spring
纔給抽取出來。web
擼代碼就和寫文章同樣同樣的,寫以前列大綱,設定所描述場景的內在聯繫,表達的中心思想,而後融入各類技巧,好比比喻,擬人等等,最後也就是經過這些賦予文章的靈魂。redis
還有一點,我是以爲,讀源碼少用debug
,這個是面向過程的讀法,最好是面向場景,才能更好的面向對象,面向設計。debug
歷來都是用來作調試的,並不是是看源碼的最優選擇。編程
github.com/muyinchen/s… 個人源碼解讀系列,感興趣的能夠看看,雖然都是關於響應式這塊的,之後的話,會加入你們感興趣的。後端
最後,感謝微信羣 後端圈 提供的良好的學習討論的環境。同時,有對Java響應式編程感興趣的同窗能夠加qq羣523409180一塊兒討論的。微信