原始碼閱讀心得

2021-10-04 19:57:42 字數 615 閱讀 3506

簡單記錄一下自己最近一段時間閱讀乙個c語言開源專案的心得

1、閱讀工具

source insight 4.0 + gdb + typora

2、閱讀心得

1)不要陷在**的實現細節裡面出不來,浪費時間。因為稍微大一點的開源專案,都有很多自定義的結構體,這些結構體封裝了大量的實現細節,特別是c語言的指標滿天飛,看一會頭就昏了。所以在看的時候,要先抓住整個實現的骨架,而不是枝幹。什麼是骨幹?**就是這個程式本質上是什麼。(可以嘗試用一句話來概述)**比如有一處解析mp4檔案的實現,通過gdb跟蹤,就會發現,**這段程式本質上就是樹的遍歷,並做了優化。**這樣就對實現有了整體把握,不至於盲人摸象。

2)多動筆,多畫圖

剛才還看的乙個結構體的宣告,結果過了一會就忘了,這個時候不妨可以自己在紙上多畫畫,用圖展示出來更形象幫助理解,如上面提到的基於樹的遍歷的mp4 box解析。

3)基本功

之前對基本功的理解多來自於網上前輩們的分享,就是要知道os知識,資料結構體、計算機網路等。在閱讀了這個程式後,發現基本功從程式設計角度講還應該包括:對字串遍歷,遞迴程式這些在學習程式設計的時候必練的練習十分熟悉。這些被挑選出來作為我們程式設計入門的基礎練習必然是有原因的——再複雜的程式都是由簡單程式經過一定組織堆砌出來的。

《原始碼閱讀》原始碼閱讀技巧,原始碼閱讀工具

檢視某個類的完整繼承關係 選中類的名稱,然後按f4 quick type hierarchy quick type hierarchy可以顯示出類的繼承結構,包括它的父類和子類 supertype hierarchy supertype hierarchy可以顯示出類的繼承和實現結構,包括它的父類和...

原始碼閱讀 Glide原始碼閱讀之with方法(一)

前言 本篇基於4.8.0版本 原始碼閱讀 glide原始碼閱讀之with方法 一 原始碼閱讀 glide原始碼閱讀之load方法 二 原始碼閱讀 glide原始碼閱讀之into方法 三 大多數情況下,我們使用glide 就一句 但是這一句 裡面蘊含著成噸的 with方法有以下幾個過載方法 publi...

原始碼閱讀 Glide原始碼閱讀之load方法(二)

原始碼閱讀 glide原始碼閱讀之load方法 二 原始碼閱讀 glide原始碼閱讀之into方法 三 首先,load方法有以下幾個過載方法 public requestbuilder load nullable bitmap bitmap public requestbuilder load nu...