如何看一個比較大的程式碼

來源:互聯網
上載者:User

1.快速總體瞭解整個代碼 瞭解基本知識及背景

2.若該程式是可安裝或者可啟動並執行程式 那麼安裝運行,瞭解其功能

3.按照功能分模組,大模組化為小模組,大問題化解為小問題 逐一進行解決

4.最好按照某種思路理出幾條線,順著這幾條線一步步深入進去

5.利用比較好的代碼閱讀工具,這裡我推薦 source insight 對於資料結構和類的定義可以用這個工具很簡單的追蹤到

6.理清函數的調用方式,利用source insight 找出函數的調用過程

7.關鍵的資料結構和類的繼承派生要畫出一個自己能理解的圖來,這樣在看代碼的時候可以隨時對圖形進行修改,也便於自己理解

8.大型代碼定義部分 都是可以分成幾個模組來看的  

9.看一個函數先看他的傳回值和傳入的參數,然後看該函數到底做了什麼,參數帶進來的是什麼,傳回值或引用帶走的又是什麼

10. 用電腦的思維方式去看代碼,用人的思維方式去總結代碼  不要片面性的看語言和文法,那樣看完了都不知道程式幹什麼用的

11.等把代碼看明白了之後,最好在代碼邊上做詳細的注釋,以後回來看,或者使用這些代碼的時候,你就會發現注釋太有用了

12.代碼中使用到的特殊機制要弄清楚,例如看通訊端 你就要把select、poll、epoll這些機制弄明白 可以通過查閱其他資料看這些事件機制

13.看完代碼之後,能用自己的語言講出來這是做什麼的,怎麼做的,那麼看代碼就達到一個層次了

14.看結構體或者類很重要啊,首先要結合著,程式碼搜尋結構體定義的變數是做什麼用的,改結構體在什麼地方調用過,如何建立的,如何刪除的,如何初始化的,如何使用的

      對結構體有個大體瞭解

15.看某個結構體或者函數引用的地方 非常重要 有助於你理解這個結構體在代碼中的作用,

 

注意:

第一個步驟,快速探索一定要迅速  不可糾結於某個小問題 要從整體宏觀上把握和理解 這個步驟有文檔最好了

第二個步驟,功能性的東西要瞭解 大膽猜測,小心驗證

第三個步驟,具體到某個功能模組就要仔細看,分清楚,深入進去,一定要真正理解,深入進去是對某些資料走向或者思路的深入,而不是對文法和語言的深入

第四個步驟,沿著幾條線走,不容易迷失方向,看代碼的時候也不會暈----------資料結構最好畫個圖  初始化和銷毀的代碼要好好看,再看操作性代碼就瞭然了

 

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.