一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

完善資料讓更多小伙伴認識你,還能領(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 中,打開一個文件的時候,會列出當前文件中所有預處理、宏定義、變量、函數(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ù)名稱,如果定義有重復會先提示,供你選擇,如圖:

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

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

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

如果有重復也會出現(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)勢,本輪勝出。

主題設置

閱讀源碼需要很長時間,所以提供一個舒服的主題也是很重要的。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 提供的遠程 SSH 功能,去連接遠程 Linux 主機,它會將遠程主機上的目錄直接作為工作區(qū),另外還提供了集成終端,修改后直接在終端中編譯即可,如圖:

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

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

總結(jié)

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

原文標題:兩款工具對比:Source Insight vs VS Code

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

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

    關(guān)注

    68

    文章

    19896

    瀏覽量

    235365
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11511

    瀏覽量

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

    關(guān)注

    96

    文章

    2953

    瀏覽量

    68409

原文標題:兩款工具對比:Source Insight vs VS Code

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

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

掃碼添加小助手

加入工程師交流群

    評論

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

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

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

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

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

    源代碼構(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

    源代碼加密、源代碼防泄漏c/c++與git服務器開發(fā)環(huán)境

    源代碼加密對于很多研發(fā)性單位來說是至關(guān)重要的,當然每家企業(yè)的業(yè)務需求不同所用的開發(fā)環(huán)境及開發(fā)語言也不盡相同,今天主要來講一下c++及git開發(fā)環(huán)境的源代碼防泄密保護方案。企業(yè)源代碼泄密場景一、在很多
    的頭像 發(fā)表于 02-12 15:26 ?532次閱讀
    <b class='flag-5'>源代碼</b>加密、<b class='flag-5'>源代碼</b>防泄漏c/c++與git服務器開發(fā)環(huán)境

    如何選擇合適的電機驅(qū)動芯片

    在現(xiàn)代生活中,電機廣泛使用在家電產(chǎn)品、汽車電子、工業(yè)控制等眾多應用領(lǐng)域,每一個電機的運轉(zhuǎn)都離不開合適的驅(qū)動芯片。納芯微提供豐富的電機驅(qū)動產(chǎn)品選擇,本期視頻將重點介紹常見電機種類與感性負載應用,幫助大家更深入了解如何選擇
    的頭像 發(fā)表于 11-21 12:31 ?1433次閱讀
    如何<b class='flag-5'>選擇</b><b class='flag-5'>合適</b>的電機驅(qū)動芯片

    如何選擇合適的TTL芯片

    TTL(晶體管-晶體管邏輯)芯片是數(shù)字電子領(lǐng)域中的基礎組件,廣泛應用于各種電子系統(tǒng)和設備中。它們以其高速、低功耗和可靠性而聞名。 1. 了解TTL芯片的基本原理 在選擇合適的TTL芯片之前,了解其
    的頭像 發(fā)表于 11-18 10:34 ?1000次閱讀

    Gmapping源代碼

    Gmapping源代碼.docx
    發(fā)表于 11-16 13:42 ?0次下載

    如何選擇合適的NPU型號

    選擇合適的NPU(神經(jīng)處理單元)型號是一個涉及多個因素的綜合考量過程。以下是一些建議,幫助您做出明智的選擇: 一、明確應用需求 應用場景 : 根據(jù)您的應用場景(如計算機視覺、自然語言處理、自動駕駛
    的頭像 發(fā)表于 11-15 09:16 ?1840次閱讀

    ECU故障診斷工具 如何選擇合適的ECU

    數(shù)據(jù)監(jiān)控和執(zhí)行元件測試。這些功能是診斷工具的核心,能夠幫助技師識別和解決問題。 2. 兼容性 選擇ECU故障診斷工具時,首先要考慮的是工具的兼容性。一個好的診斷
    的頭像 發(fā)表于 11-05 10:23 ?1169次閱讀

    如何選擇合適的UWB模塊

    選擇合適的UWB(超寬帶)模塊需要考慮多個因素,以確保模塊能夠滿足特定應用場景的需求。以下是一些關(guān)鍵因素和步驟,幫助您選擇合適的UWB模塊: 一、了解UWB技術(shù)基礎 工作原理 :UWB
    的頭像 發(fā)表于 10-31 11:18 ?1021次閱讀

    如何選擇合適的電感器匹配感性負載?

    在匹配感性負載時,選擇合適的電感器是至關(guān)重要的。電感器的主要作用是抑制電流變化,從而維持電路的穩(wěn)定性。為了確保電路的穩(wěn)定運行,需要考慮以下因素: 電流和電壓:首先,需要確定電感器的額定電流和額定電壓
    發(fā)表于 10-22 15:50

    源代碼解析工具與自動化流程圖生成解決方案

    ? 摘要:CasePlayer2是一款強大的源代碼解析工具,專門設計用于分析ANSI C、C、C++以及匯編語言源代碼,并自動化地生成流程圖等文件。該工具集成了多種功能,包括MISRA
    的頭像 發(fā)表于 10-10 13:40 ?1051次閱讀

    怎樣選擇合適的MOSFET

    怎樣選擇合適的MOSFET
    的頭像 發(fā)表于 10-01 08:01 ?674次閱讀
    怎樣<b class='flag-5'>選擇</b><b class='flag-5'>合適</b>的MOSFET

    如何選擇合適的過載保護器

    選擇合適的過載保護器是確保電氣系統(tǒng)安全穩(wěn)定運行的關(guān)鍵步驟。以下將詳細闡述如何選擇合適的過載保護器,包括考慮的因素、選擇步驟以及注意事項。
    的頭像 發(fā)表于 09-06 11:53 ?2325次閱讀

    hex可以轉(zhuǎn)成源代碼

    ,可以通過以下幾種方法嘗試獲取源代碼的近似形式: 反匯編 : 使用反匯編工具可以將Hex文件中的機器碼轉(zhuǎn)換回匯編語言。匯編語言是一種低級語言,它更接近于機器碼,但仍然具有一定的可讀性。 通過反匯編得到的匯編代碼可以提供程序
    的頭像 發(fā)表于 09-02 10:41 ?2310次閱讀