在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

剛工作,代碼太多沒頭緒?怎么辦?

朱老師物聯網大講堂 ? 2024-03-25 08:09 ? 次閱讀


最近有位問:剛參加工作,看不懂代碼?f9c8b80a-ea3b-11ee-9118-92fbcf53809c.png

這篇文章我們就來簡單分享一些看代碼的經驗。

1、了解項目整體架構

在閱讀嵌入式代碼之前,我們需要對項目整體架構有一個基本的了解。

公司里的項目,一般在做項目之前,都會進行系統設計、編寫一些文檔、畫一些系統框圖。可以先找這些項目資料看一看。雖然我們后面可能只是負責某個模塊,但是還是很有必要先了解這個項目的總體框架。了解清楚整個項目有有哪些硬件模塊、哪些軟件模塊、有哪些組件、各個模塊之間的輸入輸出、各個模塊是如何協同工作、項目的主體業務是什么、主要功能有哪些等。

嵌入式代碼通常可以分解為幾個關鍵模塊,例如任務管理、內存管理、通信協議等。將各個模塊分離出來,逐一閱讀和理解,可以更加清晰地掌握代碼的核心思想。

對項目整體架構有一定了解之后,有助于我們更好地理解代碼中的邏輯。

2、熟悉通信部分代碼

項目里一般會劃分多個硬件/軟件模塊,這些模塊之間會進行數據交互。

梳理清楚:

  • 使用了哪些硬件通信接口?例如I2C、SPI、UART等。
  • 線程通信?
  • 進程間通信?
  • 網絡通信?
  • 協議數據處理?
  • 各個模塊的數據分類?

我們可以首先熟悉通信部分代碼,梳理清楚各模塊的交互。這一部分代碼一般是比較容易看懂的,基本是看懂了一條數據之后,類似的基本就看懂了?;究炊螅梢愿鴶祿牧飨?,看看拿到這些數據之后,去做了什么處理。

因為你之后的工作,有可能是寫這一部分代碼。比如增加某個數據,要實現什么功能。

拿數據 + 做邏輯

3、閱讀主業務模塊

業務邏輯模塊直接跟產品功能掛鉤,看懂這個模塊就可以很好地了解我們產品的功能。

業務邏輯作為最上層的模塊,可能有好幾個模塊都對其提供一些接口。

閱讀這一塊代碼需要注意的是:

每個功能具體的函數實現可能會嵌套好多層的代碼,剛開始千萬不要一層一層點進去閱讀、不要試圖看懂每個函數、每行代碼,不然只會越看越懵。

我們在閱讀這個模塊的代碼時,盡量沿著這個模塊的主線去閱讀,沿著主線盡可能快地弄清這個模塊做的事情,理解函數調用關系。等我們弄懂本模塊之后,日后對其它模塊感興趣再去仔細閱讀其具體實現也不遲。

4、了解單元測試測試用例

一般項目里模塊開發完成會編寫一些單元測試用例進行自測。我們可以先不看單元測試模塊是如何實現的,可以先看一些各個模塊的測試用例,每個用例是如何跑的?輸入?輸出?

通過閱讀這些測試用例,可以幫助我們快速地理解各個模塊是如何觸發的,以及一些接口的使用方法。

5、實踐、分析日志

對代碼有了一定理解之后,肯定也會帶有很多困惑,這時候可以自己修改代碼/增加一些調試日志來幫我們理解代碼,有在線調試條件的可以進行在線調試。

同時,我們需要大致熟悉項目整體的日志:

熟悉日志的格式。帶有時間戳?帶有模塊標簽?日志等級?

了解應用程序啟動日志,通過日志了解啟動做了哪些工作、經過了哪些流程。

了解一些關鍵日志。主業務的日志?

跑跑一些用例,看看對應的日志。

以上就是我們關于閱讀嵌入式代碼的一些分享。

如果文章對你有幫助,麻煩幫忙轉發。

本文轉載自公眾號|嵌入式大雜燴

作者 | 嵌入式大雜燴

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 代碼
    +關注

    關注

    30

    文章

    4788

    瀏覽量

    68617
  • 嵌入式代碼
    +關注

    關注

    0

    文章

    5

    瀏覽量

    5896
收藏 人收藏

    評論

    相關推薦

    51單片機

    畢業設計都有還沒頭緒,都不知道要怎么死的了,1月份就要答辯了。我現在都沒一點進程?;?1單片機的倒車雷達。發射 接收 溫度 4位顯像管 蜂鳴器 。仿真 程序 電路圖、、想想都不知道要怎么辦
    發表于 10-30 20:26

    公司在做一個安捷倫4395網絡分析儀的軟件,還沒頭緒,不知怎么做

    公司在做一個安捷倫4395網絡分析儀的軟件,還沒頭緒,不知怎么做,請教各位大俠給提個意見,謝謝
    發表于 08-27 23:01

    cadence16.5導入PCb導入網表顯示失敗,怎么辦,新手入門

    cadence16.5導入PCb導入網表顯示失敗,怎么辦,新手入門
    發表于 12-14 21:40

    求大神Labview畢業設計整套的例子,畢設沒頭緒~~~

    哪位大神有沒有Labview畢業設計整套的,能不能給小弟拿來參考下,最近在忙畢業設計,有點沒頭緒,跪求資源~~~
    發表于 12-05 15:55

    諾基亞n70白屏怎么辦

    諾基亞n70白屏怎么辦
    發表于 09-01 15:58 ?3553次閱讀
    諾基亞n70白屏<b class='flag-5'>怎么辦</b>

    顯示桌面沒了怎么辦

    顯示桌面沒了怎么辦 我的windows xp的顯示桌面的圖標沒有了怎么辦。下載一個放到系統目
    發表于 01-18 19:00 ?3854次閱讀

    電腦進入系統后卡死怎么辦

    電腦進入系統后卡死怎么辦 癥狀:啟動進入系統界面時,點什么都打不開,要等一分鐘左右才能打開。     解決辦法:     一
    發表于 02-24 13:46 ?1.4w次閱讀

    文件或目錄損壞怎么辦

    文件或目錄損壞怎么辦 我的D盤分區是NTFS格式的,但現在變成RAW。而且雙擊D盤就提示:無法訪問D:/ 文件或目錄損壞且無法讀取。怎么辦
    發表于 02-25 10:16 ?1112次閱讀

    顯示器開機模糊怎么辦

    顯示器開機模糊怎么辦    就CRT顯示器開機時畫面模糊,隨著時間的延長,屏幕的畫面越來越清晰,10到30分鐘恢復正常這一
    發表于 03-01 10:15 ?1756次閱讀

    電池換新無法可依怎么辦

    電池壞了怎么辦?修。修不好怎么辦?換。
    發表于 03-19 11:23 ?1405次閱讀

    linux無法識別U盤怎么辦

    linux無法識別U盤怎么辦?
    發表于 05-19 09:08 ?1.7w次閱讀
    linux無法識別U盤<b class='flag-5'>怎么辦</b>

    鍵槽滾鍵了怎么辦?

    鍵槽滾鍵了怎么辦
    發表于 03-07 16:37 ?7次下載

    電機過熱怎么辦

    電機過熱怎么辦?WAYON維安PPTC有方案
    的頭像 發表于 11-01 15:08 ?718次閱讀
    電機過熱<b class='flag-5'>怎么辦</b>?

    pcb鉆孔偏孔了怎么辦?

    pcb鉆孔偏孔了怎么辦
    的頭像 發表于 11-22 11:10 ?3558次閱讀
    pcb鉆孔偏孔了<b class='flag-5'>怎么辦</b>?

    風機軸磨損怎么辦

    電子發燒友網站提供《風機軸磨損怎么辦.docx》資料免費下載
    發表于 01-07 11:04 ?0次下載
    主站蜘蛛池模板: 久久99精品久久久久久秒播| 国产黄mmd在线观看免费| 奇米影视四色首页手机在线| 91久久澡人人爽人人添| 男女爱爱爽爽福利免费视频| 在线一区观看| 四虎影院最新| 俺去鲁婷婷六月色综合| 亚洲啪啪网站| 四虎影院在线免费播放| 97成人资源| 美国bj69| 日本写真高清视频免费网站网| 欧美香蕉视频| 手机福利视频| 好紧好湿好黄的视频| 极品啪啪| 福利视频自拍| 婷婷精品视频| 欧美精品色精品一区二区三区| 五月天婷婷视频在线观看| 亚洲日本欧美| 另类激情网| 国产精品爽爽影院在线| 婷婷色激情| 午夜久久免费视频| 日本免费不卡在线一区二区三区| 女人18毛片水多| 国产精品天天看天天爽| 特级毛片aaa免费版| 天天做天天爱天天射| 国产精品女丝袜白丝袜| 国产精品视频第一区二区三区| 欧美草比| 女人张开双腿让男人桶完整| 久久久久久久久女黄| 啪啪免费网| 欧美三级 欧美一级| 黄 色 成 年人网站| 四虎成人免费网站在线| 视频免费在线|