91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

如何選擇合適的工具來閱讀源代碼

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

掃碼添加小助手

加入工程師交流群

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

所以,選擇一個合適的工具來閱讀源代碼,變?yōu)榱艘粋€經(jīng)久不衰的話題。

閱讀源碼的時候,其實無非也就兩個重要的功能:

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

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

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

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

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

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

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

創(chuàng)建代碼工程

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

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

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

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

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

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

文件架構(gòu)

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

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

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

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

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

定義跳轉(zhuǎn)功能

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

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

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

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

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

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

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

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

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

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

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

主題設(shè)置

閱讀源碼需要很長時間,所以提供一個舒服的主題也是很重要的。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 上編譯,但是我日常使用的系統(tǒng)是 Windows,所以我一般將 VSCode 安裝在 Windows 上,使用 VS Code 提供的遠(yuǎn)程 SSH 功能,去連接遠(yuǎn)程 Linux 主機,它會將遠(yuǎn)程主機上的目錄直接作為工作區(qū),另外還提供了集成終端,修改后直接在終端中編譯即可,如圖:

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

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

總結(jié)

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

原文標(biāo)題:兩款工具對比:Source Insight vs VS Code

文章出處:【微信公眾號:strongerHuang】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

    關(guān)注

    68

    文章

    20250

    瀏覽量

    252209
  • Linux
    +關(guān)注

    關(guān)注

    88

    文章

    11758

    瀏覽量

    219009
  • 源代碼
    +關(guān)注

    關(guān)注

    96

    文章

    2953

    瀏覽量

    70306

原文標(biāo)題:兩款工具對比:Source Insight vs VS Code

文章出處:【微信號:strongerHuang,微信公眾號:strongerHuang】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

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

    如何選擇適合的智駕仿真工具進行場景生成和測試?

    在自動駕駛技術(shù)日益發(fā)展的背景下,選擇合適的智駕仿真工具進行場景生成和測試顯得尤為重要。該工具不僅需要支持高精度的場景重建,還需滿足多種環(huán)境條件和傳感器模型的兼容性。本文將深入探討如何評
    的頭像 發(fā)表于 11-25 10:32 ?375次閱讀
    如何<b class='flag-5'>選擇</b>適合的智駕仿真<b class='flag-5'>工具</b>進行場景生成和測試?

    如何選擇合適的SC1溶液清洗硅片

    選擇合適的SC1溶液清洗硅片需要綜合考慮多個因素,以下是具體的方法和要點:明確污染物類型與污染程度有機物污染為主時:如果硅片表面主要是光刻膠、油脂等有機污染物,應(yīng)適當(dāng)增加過氧化氫(H?O?)的比例
    的頭像 發(fā)表于 10-20 11:18 ?612次閱讀
    如何<b class='flag-5'>選擇</b><b class='flag-5'>合適</b>的SC1溶液<b class='flag-5'>來</b>清洗硅片

    如何選擇合適的實時操作系統(tǒng)

    選擇合適的實時操作系統(tǒng)(RTOS,Real-Time Operating System)可能會影響你在不同行業(yè)的職業(yè)發(fā)展路徑。
    的頭像 發(fā)表于 09-09 14:47 ?1068次閱讀

    Nuvoton_8051_ISP-ICP_Programmer_v7.15中缺少ISP加載器的源代碼怎么解決?

    : isp_code_n76e885_v4.10_comport.bin isp_code_n76e616_v4.10_comport.bin 是否有指向這些引導(dǎo)加載程序的源代碼的鏈接? 以下內(nèi)容為
    發(fā)表于 08-18 06:30

    如何選擇合適的直流負(fù)載或交流負(fù)載?

    如何選擇合適的直流負(fù)載或交流負(fù)載?
    的頭像 發(fā)表于 08-04 17:53 ?1082次閱讀
    如何<b class='flag-5'>選擇</b><b class='flag-5'>合適</b>的直流負(fù)載或交流負(fù)載?

    HarmonyOS AI輔助編程工具(CodeGenie)代碼智能解讀

    本功能從DevEco CodeGenie 5.1.0 Beta版本開始支持。 CodeGenie提供智能AI能力對框選的代碼片段進行逐條解釋,總結(jié)代碼段含義,幫助開發(fā)者提升閱讀代碼的速
    發(fā)表于 07-17 17:02

    如何選擇合適的物聯(lián)網(wǎng)藍(lán)牙模塊?

    也會導(dǎo)致更多的信號干擾。因此,需要根據(jù)具體應(yīng)用場景選擇合適的發(fā)射功率模塊。2、接收靈敏度:接收靈敏度決定了藍(lán)牙模塊能否在多遠(yuǎn)距離內(nèi)成功接收信號。接收靈敏度越高的模塊,能夠接收信號的距離就越遠(yuǎn)。因此
    發(fā)表于 06-28 21:46

    【版本控制教程】如何使用Unreal Engine 5 + UE源代碼控制(Perforce P4)

    項目越大,越需要靠譜的版本控制系統(tǒng)。Perforce P4不僅是Epic官方推薦的源代碼控制工具,更是大廠團隊協(xié)作的核心支持之一。如何配置P4+UE?手把手教你怎么用↓↓↓
    的頭像 發(fā)表于 06-25 11:22 ?1507次閱讀
    【版本控制教程】如何使用Unreal Engine 5 + UE<b class='flag-5'>源代碼</b>控制(Perforce P4)

    聚徽一文讀懂——如何根據(jù)工業(yè)需求選擇合適尺寸的手持工業(yè)平板電腦

    在工業(yè)領(lǐng)域,手持工業(yè)平板電腦已成為提升工作效率、優(yōu)化生產(chǎn)流程的重要工具。而選擇合適尺寸的手持工業(yè)平板電腦,對于滿足特定工業(yè)需求、確保操作便捷性與工作效能至關(guān)重要。以下將詳細(xì)探討如何依據(jù)不同工業(yè)需求
    的頭像 發(fā)表于 06-04 10:30 ?973次閱讀

    使用FX3 SDK發(fā)布源代碼是否違反許可?

    使用 FX3 SDK 發(fā)布源代碼是否違反許可? CYPRESS?EZ-USB? FX3 SDK1.3licenselicense.txt ”4. 專有權(quán)利; 到“您同意對源代碼保密?!?那里寫著一句話,所以我想問一下以確定。
    發(fā)表于 05-08 06:54

    如何選擇合適的 BNC 連接器?接線工具與配件推薦

    線纜:配套的線纜要與BNC連接器的阻抗匹配。例如,75Ω的BNC連接器應(yīng)搭配75Ω特性阻抗的同軸電纜,如RG-59線纜,確保信號傳輸全程阻抗匹配,減少信號失真。 選擇合適的BNC連接器需綜合考慮應(yīng)用場景與性能指標(biāo),搭配優(yōu)質(zhì)的接線工具
    的頭像 發(fā)表于 05-05 11:07 ?748次閱讀
    如何<b class='flag-5'>選擇</b><b class='flag-5'>合適</b>的 BNC 連接器?接線<b class='flag-5'>工具</b>與配件推薦

    如何選擇合適的臺慶電感?

    選擇合適的臺慶電感時,需要根據(jù)實際應(yīng)用場景和使用需求考慮多個因素。以下是一些關(guān)鍵的步驟和考慮因素: 一、了解電感的基本參數(shù) 額定電流 :根據(jù)電路中的功耗和電流負(fù)載來選擇
    的頭像 發(fā)表于 04-14 15:51 ?760次閱讀

    三環(huán)電容的選型指南:如何根據(jù)電路需求選擇合適型號?

    三環(huán)電容的選型指南,關(guān)鍵在于根據(jù)電路的具體需求選擇合適的型號。以下是根據(jù)電路需求選擇三環(huán)電容型號的詳細(xì)步驟: 一、明確電路需求 首先,需要明確電路對電容的具體需求,包括電容值、耐壓值
    的頭像 發(fā)表于 03-21 15:08 ?1077次閱讀
    三環(huán)電容的選型指南:如何根據(jù)電路需求<b class='flag-5'>選擇</b><b class='flag-5'>合適</b>型號?

    27個FPGA實例源代碼

    本資料收集匯總了27個FPGA實例源代碼,有需要的可以下載學(xué)習(xí)! 獲取完整文檔資料可下載附件哦?。。?!如果內(nèi)容有幫助可以關(guān)注、點贊、評論支持一下哦~
    發(fā)表于 03-14 17:31

    源代碼構(gòu)建OpenVINO?后,無法獲得Open Model Zoo工具怎么解決?

    OpenVINO?從源代碼構(gòu)建 使用 Pip 下載的 OMZ 工具:pip install omz-tools 遇到錯誤: ERROR: Could not find a version
    發(fā)表于 03-06 08:31