国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

嵌入式Linux軟件開發:兩款閱讀源代碼的工具對比

strongerHuang ? 來源:Mculover666 ? 作者:mculover666 ? 2022-03-30 13:52 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

嵌入式 Linux 軟件開發的時候,經常會閱讀大型工程源碼,比如 uboot 源代碼,Linux Kernel 源碼等。

所以,選擇一個合適的工具來閱讀源代碼,變為了一個經久不衰的話題。 閱讀源碼的時候,其實無非也就兩個重要的功能:

① 定義或者聲明快速跳轉

② 快速搜索指定內容

另外還有一些功能是和開發體驗相關的,比如:

① 工具的主題(亮色和暗色)

② 工具是否方便修改編輯內容

③ 工具是否還提供其它的方便功能

目前常用的就是 Source Insight 和 VS Code,下面就來按照上述需求進行對比,看看哪個更適合?

創建代碼工程

Source Insight 在閱讀工程代碼時,可以通過創建 Source Insight 工程來選擇哪些文件加入,哪些文件不加入。

對于 uboot 這種包含有大量板級文件夾的工程,加入之后其中的文件只和目前移植的這款處理器有關,這個功能是非常有優勢的,也是眾多工程師喜愛 Source Insight 的原因。

159b3f22-ac30-11ec-aa7f-dac502259ad0.png

相比之下,VS Code并不提供這種選擇加入的功能,VS Code 非常粗暴,文件夾就是工作區,只需要打開源碼文件夾,所有文件全部加入:

15aa8ab8-ac30-11ec-aa7f-dac502259ad0.png

相比之下,我覺得 Source Insight 勝出,VS Code 這種將所有文件一股腦全部加入的方式,在查找文件時非常麻煩。

文件架構

在 Source Insight 中,打開一個文件的時候,會列出當前文件中所有預處理、宏定義、變量、函數的架構,如圖:

15bd8b4a-ac30-11ec-aa7f-dac502259ad0.png

在 VS Code 中打開文件時也有同樣的功能,但又是一股腦的按照順序將所有函數聲明和定義列出,實際查看時也沒有什么太多作用:

15d68a14-ac30-11ec-aa7f-dac502259ad0.png

在文件整體架構方面,Source Insight 勝出,VS Code 對于代碼架構方面的顯示,還需要再優化。

定義跳轉功能

在 Source Insight 中,可以右鍵跳轉函數聲明或者直接按住 Ctrl 點擊函數名稱,如果定義有重復會先提示,供你選擇,如圖:

15f06308-ac30-11ec-aa7f-dac502259ad0.png

在 VScode 中,首先需要安裝 C/C++擴展,然后才支持定義跳轉,可以按住 Ctrl 鍵點擊或者右鍵跳轉:

1602db46-ac30-11ec-aa7f-dac502259ad0.png

如果有重復也會出現提示,選擇需要查看哪個定義。 在定義跳轉功能上,兩者持平,功能基本都夠用。

全局搜索指定內容

在 Source Insight 中,提供的搜索功能如下:

161490b6-ac30-11ec-aa7f-dac502259ad0.png

在 VS Code 中也提供了全局搜索的功能,但是由于它將所有文件都包含進來了,無用的搜索結果比較多:

16290f8c-ac30-11ec-aa7f-dac502259ad0.png

所以,在搜索功能上,由于 Source Insight 先天性的優勢,本輪勝出。

主題設置

閱讀源碼需要很長時間,所以提供一個舒服的主題也是很重要的。 Source Insight 提供的主題有:

16391f80-ac30-11ec-aa7f-dac502259ad0.png

VScode 提供的主題就非常棒了:

16449838-ac30-11ec-aa7f-dac502259ad0.png

Source Insight 提供的這些主題我覺得還行,但換出來感覺效果都比較怪,沒有那么舒服,相比之下 VS Code 的主題做的就比較好,無論亮色還是暗色看著都很舒服,對于我個人而言,本輪 VS Code 勝出。

其他功能

Source 除了我上述說的主要功能之外,還有非常多的功能,但我都沒怎么用過。 此處,我必須要說一下 VS Code,因為 Uboot 源碼需要在 linux 上編譯,但是我日常使用的系統是 Windows,所以我一般將 VSCode 安裝在 Windows 上,使用 VS Code 提供的遠程 SSH 功能,去連接遠程 Linux 主機,它會將遠程主機上的目錄直接作為工作區,另外還提供了集成終端,修改后直接在終端中編譯即可,如圖:

16637f3c-ac30-11ec-aa7f-dac502259ad0.jpg

另外,VSCode 內部集成了 git 可視化功能,可以方便的使用 git 管理代碼。 相比之外,Source Insight 在修改文件之后,還需要把修改的文件上傳到 Linux 服務器去編譯,過程有點繁瑣。 所以,在額外功能的擴展性上,我覺得 VScode 勝出。

總結

經過上述比較,我來說說我的體驗和看法:Source Insight 就像是一個老大哥,基本功很扎實,比如源碼查看,文件架構列表這些,很方便實用,在閱讀代碼的時候非常方便,但在開發時相對不太方便。對于它的文件選擇加入功能,其實我是不太喜歡的,這么龐大的源碼工程,既然我知道哪些文件有用,哪些文件沒用,那我還看啥呢?所以對初學者不太友好。而 VS Code 呢,就是一個年輕小伙,后起之秀,比如主題隨便換,可以遠程連接 Linux 主機進行開發,Git 可視化擴展等等,各種炫酷功能,但是基本功太不扎實,在閱讀源碼時的基礎功能沒做好,但是在開發時非常順手。

審核編輯:郭婷

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

    關注

    5198

    文章

    20449

    瀏覽量

    334079
  • Linux
    +關注

    關注

    88

    文章

    11760

    瀏覽量

    219039
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    【飛凌嵌入式RV1126B開發板】+兩款開發板之比較

    目前兩款常見的RV1126B開發板,一是靈眸科技推出的EASY EAI Nano-TB(RV1126B)開發套件,另一就是飛凌
    發表于 03-05 23:32

    嵌入式軟件開發工具市場新動向:訂閱制趨勢下的中國開發者選擇

    面對軟件業從永久授權模式廣泛轉向訂閱制的行業趨勢,作為行業大主流嵌入式軟件開發工具,即Keil MDK與IAR Embedded Workbench也推出了不同的市場策略,正在為中國
    的頭像 發表于 01-30 17:20 ?738次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>軟件開發工具</b>市場新動向:訂閱制趨勢下的中國<b class='flag-5'>開發</b>者選擇

    嵌入式驅動開發,需要掌握哪些技能?

    單元測試、集成測試、系統測試等,并學會使用調試工具進行問題排查。 6、 其他嵌入式驅動開發,實質也是軟件開發,還需要掌握開發文檔的編輯、
    發表于 01-20 16:46

    什么是嵌入式應用開發

    。 · ?醫療設備?:如心電圖儀、血壓計等。 開發工具和技術 嵌入式開發過程中常用的工具包括: · ?集成開發環境(IDE)?:用于編寫、編譯和調試
    發表于 01-12 16:13

    嵌入式軟件開發的 10 個技巧分享

    !請謹記,如果不頻繁提交代碼,存儲庫就不會達到預期目的。如果做了不可修復的改變,過周才提交代碼再恢復的話,就會造成大量工作和時間的損失! 技巧 9:代碼注釋 在緊張的
    發表于 12-25 06:04

    C語言單元測試在嵌入式軟件開發中的作用及專業工具的應用

    三、winAMS工具的核心功能與優勢 winAMS是一專業的嵌入式C語言單元測試工具,針對嵌入式開發的特殊需求提供了全面解決方案。其主要
    發表于 12-18 11:46

    從小白到大牛:Linux嵌入式系統開發的完整指南

    從小白到大牛:Linux嵌入式系統開發的完整指南 一、小白入門:搭建 Linux 嵌入式開發的認知地基? 對于零基礎學習者,首先要打破 “
    發表于 12-16 10:42

    CW32嵌入式軟件開發的必備知識

    嵌入式軟件開發作為計算機科學和電子工程的交叉領域,要求開發人員具備一系列的專業知識和技能。 而基于CW32的嵌入式軟件開發必備知識包括以下
    發表于 11-28 07:48

    嵌入式軟件測試與專業測試工具的必要性深度解析

    嵌入式系統作為控制、監視或輔助裝置運行的專用計算機系統,其軟件測試面臨著獨特的挑戰和嚴格的要求。專業測試工具嵌入式軟件開發過程中發揮著不可
    發表于 09-28 17:42

    新一代嵌入式開發平臺 AMD嵌入式軟件工具2025.1版現已推出

    AMD 2025.1 版嵌入式軟件工具是面向新一代嵌入式系統開發而打造的綜合平臺,全面加速概念構想到部署落地。 2025.1 版
    的頭像 發表于 08-20 09:15 ?3980次閱讀

    AMD 2025.1版嵌入式軟件工具的新增功能

    AMD 2025.1 版嵌入式軟件工具是面向新一代嵌入式系統開發而打造的綜合平臺,全面加速概念構想到部署落地。
    的頭像 發表于 08-15 15:32 ?1268次閱讀

    2025“芯原杯”全國嵌入式軟件開發大賽圓滿落幕

    此前,2025年7月20日至26日,第四屆“芯原杯”全國嵌入式軟件開發大賽決賽在??诔晒εe辦。
    的頭像 發表于 08-06 09:51 ?1341次閱讀

    嵌入式軟件開發常用的軟件有哪些?

    文檔等非常方便,因為它查找,定位,彩色顯示等功能非常強大。開發人員會當成源代碼閱讀工具使用。 4. Keil uVision5 Keil 5
    發表于 07-03 17:06

    Linux嵌入式和單片機嵌入式的區別?

    區別 單片機嵌入式系統和Linux嵌入式系統是種不同的嵌入式系統開發方式,它們在應用領域、
    發表于 06-20 09:46

    IAR發布云端平臺,助力現代嵌入式軟件開發團隊

    該平臺為嵌入式軟件開發人員提供前所未有的自由度與靈活性,助力開發團隊在工具選擇和日常工作流中實現更高效的協作與創新。
    的頭像 發表于 03-12 11:56 ?812次閱讀