chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

嵌入式Linux軟件開發(fā):兩款閱讀源代碼的工具對(duì)比

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

掃碼添加小助手

加入工程師交流群

嵌入式 Linux 軟件開發(fā)的時(shí)候,經(jīng)常會(huì)閱讀大型工程源碼,比如 uboot 源代碼,Linux Kernel 源碼等。

所以,選擇一個(gè)合適的工具來閱讀源代碼,變?yōu)榱艘粋€(gè)經(jīng)久不衰的話題。 閱讀源碼的時(shí)候,其實(shí)無(wú)非也就兩個(gè)重要的功能:

① 定義或者聲明快速跳轉(zhuǎn)

② 快速搜索指定內(nèi)容

另外還有一些功能是和開發(fā)體驗(yàn)相關(guān)的,比如:

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

② 工具是否方便修改編輯內(nèi)容

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

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

創(chuàng)建代碼工程

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

對(duì)于 uboot 這種包含有大量板級(jí)文件夾的工程,加入之后其中的文件只和目前移植的這款處理器有關(guān),這個(gè)功能是非常有優(yōu)勢(shì)的,也是眾多工程師喜愛 Source Insight 的原因。

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

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

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

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

文件架構(gòu)

在 Source Insight 中,打開一個(gè)文件的時(shí)候,會(huì)列出當(dāng)前文件中所有預(yù)處理、宏定義、變量、函數(shù)的架構(gòu),如圖:

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

在 VS Code 中打開文件時(shí)也有同樣的功能,但又是一股腦的按照順序?qū)⑺泻瘮?shù)聲明和定義列出,實(shí)際查看時(shí)也沒有什么太多作用:

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

在文件整體架構(gòu)方面,Source Insight 勝出,VS Code 對(duì)于代碼架構(gòu)方面的顯示,還需要再優(yōu)化。

定義跳轉(zhuǎn)功能

在 Source Insight 中,可以右鍵跳轉(zhuǎn)函數(shù)聲明或者直接按住 Ctrl 點(diǎn)擊函數(shù)名稱,如果定義有重復(fù)會(huì)先提示,供你選擇,如圖:

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

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

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

如果有重復(fù)也會(huì)出現(xiàn)提示,選擇需要查看哪個(gè)定義。 在定義跳轉(zhuǎn)功能上,兩者持平,功能基本都?jí)蛴谩?/p>

全局搜索指定內(nèi)容

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

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

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

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

所以,在搜索功能上,由于 Source Insight 先天性的優(yōu)勢(shì),本輪勝出。

主題設(shè)置

閱讀源碼需要很長(zhǎng)時(shí)間,所以提供一個(gè)舒服的主題也是很重要的。 Source Insight 提供的主題有:

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

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

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

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

其他功能

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

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

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

總結(jié)

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

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5186

    文章

    20151

    瀏覽量

    328878
  • Linux
    +關(guān)注

    關(guān)注

    88

    文章

    11628

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    CW32嵌入式軟件開發(fā)的必備知識(shí)

    嵌入式軟件開發(fā)作為計(jì)算機(jī)科學(xué)和電子工程的交叉領(lǐng)域,要求開發(fā)人員具備一系列的專業(yè)知識(shí)和技能。 而基于CW32的嵌入式軟件開發(fā)必備知識(shí)包括以下
    發(fā)表于 11-28 07:48

    嵌入式開發(fā)工具版本的選擇策略

    今天,我們就來結(jié)合嵌入式常見的幾個(gè)軟件(如Keil / IAR、VS Code 、Source Insight、VMware、Git等),簡(jiǎn)單講一講嵌入式開發(fā)工具軟件版本選擇策略。 開發(fā)
    發(fā)表于 11-25 06:11

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

    嵌入式系統(tǒng)作為控制、監(jiān)視或輔助裝置運(yùn)行的專用計(jì)算機(jī)系統(tǒng),其軟件測(cè)試面臨著獨(dú)特的挑戰(zhàn)和嚴(yán)格的要求。專業(yè)測(cè)試工具嵌入式軟件開發(fā)過程中發(fā)揮著不可
    發(fā)表于 09-28 17:42

    新一代嵌入式開發(fā)平臺(tái) AMD嵌入式軟件工具2025.1版現(xiàn)已推出

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

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

    AMD 2025.1 版嵌入式軟件工具是面向新一代嵌入式系統(tǒng)開發(fā)而打造的綜合平臺(tái),全面加速概念構(gòu)想到部署落地。
    的頭像 發(fā)表于 08-15 15:32 ?1039次閱讀

    2025“芯原杯”全國(guó)嵌入式軟件開發(fā)大賽圓滿落幕

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

    【「Yocto項(xiàng)目實(shí)戰(zhàn)教程:高效定制嵌入式Linux系統(tǒng)」閱讀體驗(yàn)】+基礎(chǔ)概念學(xué)習(xí)理解

    軟件包的依賴關(guān)系、編譯選項(xiàng)、配置參數(shù)等。掌握元數(shù)據(jù)的使用方法對(duì)于定制和優(yōu)化嵌入式 Linux 系統(tǒng)至關(guān)重要。 BitBake BitBake 是 Yocto 項(xiàng)目的構(gòu)建工具。通過學(xué)習(xí)這
    發(fā)表于 08-04 22:29

    嵌入式軟件開發(fā)常用的軟件有哪些?

    文檔等非常方便,因?yàn)樗檎?,定位,彩色顯示等功能非常強(qiáng)大。開發(fā)人員會(huì)當(dāng)成源代碼閱讀工具使用。 4. Keil uVision5 Keil 5
    發(fā)表于 07-03 17:06

    Linux嵌入式和單片機(jī)嵌入式的區(qū)別?

    區(qū)別 單片機(jī)嵌入式系統(tǒng)和Linux嵌入式系統(tǒng)是種不同的嵌入式系統(tǒng)開發(fā)方式,它們?cè)趹?yīng)用領(lǐng)域、
    發(fā)表于 06-20 09:46

    如何成為一名嵌入式軟件工程師?

    、Java等)和軟件開發(fā)工具,還需要對(duì)硬件的工作原理有深入的理解。 在團(tuán)隊(duì)中,嵌入式軟件工程師往往扮演著核心角色,他們的工作直接關(guān)系到產(chǎn)品的性能、穩(wěn)定性和用戶體驗(yàn)。 02掌握核心技能與知識(shí)
    發(fā)表于 04-15 14:37

    IAR發(fā)布云端平臺(tái),助力現(xiàn)代嵌入式軟件開發(fā)團(tuán)隊(duì)

    該平臺(tái)為嵌入式軟件開發(fā)人員提供前所未有的自由度與靈活性,助力開發(fā)團(tuán)隊(duì)在工具選擇和日常工作流中實(shí)現(xiàn)更高效的協(xié)作與創(chuàng)新。
    的頭像 發(fā)表于 03-12 11:56 ?610次閱讀

    嵌入式機(jī)器學(xué)習(xí)的應(yīng)用特性與軟件開發(fā)環(huán)境

    設(shè)備和智能傳感器)上,這些設(shè)備通常具有有限的計(jì)算能力、存儲(chǔ)空間和功耗。本文將您介紹嵌入式機(jī)器學(xué)習(xí)的應(yīng)用特性,以及常見的機(jī)器學(xué)習(xí)開發(fā)軟件開發(fā)環(huán)境。 嵌入式機(jī)器學(xué)習(xí)的應(yīng)用特性與優(yōu)勢(shì) 由于
    的頭像 發(fā)表于 01-25 17:05 ?1211次閱讀
    <b class='flag-5'>嵌入式</b>機(jī)器學(xué)習(xí)的應(yīng)用特性與<b class='flag-5'>軟件開發(fā)</b>環(huán)境

    如何提高嵌入式代碼質(zhì)量?

    嵌入式代碼的質(zhì)量是至關(guān)重要的。本文將探討如何通過有效的開發(fā)方法和工具來提高嵌入式代碼的質(zhì)量,以確
    發(fā)表于 01-15 10:48

    嵌入式工程師常用的開發(fā)工具有哪些?

    仿真器可以模擬復(fù)雜的微控制器和外設(shè),幫助工程師在早期階段進(jìn)行軟件開發(fā)和調(diào)試。這大大縮短了開發(fā)周期,降低了開發(fā)成本。 總之,嵌入式工程師需要熟練掌握這些
    發(fā)表于 12-20 15:29

    ZLG致遠(yuǎn)電子與麒麟軟件攜手推出兩款銀河麒麟嵌入式工控機(jī)

    近日,ZLG致遠(yuǎn)電子與國(guó)產(chǎn)操作系統(tǒng)龍頭企業(yè)麒麟軟件積極響應(yīng)嵌入式產(chǎn)品國(guó)產(chǎn)化的大潮,共同推出了兩款重磅級(jí)的銀河麒麟嵌入式操作系統(tǒng)工控機(jī)產(chǎn)品。 這兩款
    的頭像 發(fā)表于 12-16 11:02 ?1692次閱讀