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

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

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

3天內不再提示

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

strongerHuang ? 來源:Mculover666 ? 作者:Mculover666 ? 2022-03-30 14:01 ? 次閱讀

在做嵌入式 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 可視化擴展等等,各種炫酷功能,但是基本功太不扎實,在閱讀源碼時的基礎功能沒做好,但是在開發時非常順手。

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

文章出處:【微信公眾號:strongerHuang】歡迎添加關注!文章轉載請注明出處。

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

    關注

    68

    文章

    19833

    瀏覽量

    233926
  • Linux
    +關注

    關注

    87

    文章

    11479

    瀏覽量

    213043
  • 源代碼
    +關注

    關注

    96

    文章

    2952

    瀏覽量

    68048

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

文章出處:【微信號:strongerHuang,微信公眾號:strongerHuang】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

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

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

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

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

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

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

    源代碼加密、源代碼防泄漏c/c++與git服務器開發環境

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

    如何選擇合適的電機驅動芯片

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

    如何選擇合適的TTL芯片

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

    Gmapping源代碼

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

    如何選擇合適的NPU型號

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

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

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

    如何選擇合適的UWB模塊

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

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

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

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

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

    怎樣選擇合適的MOSFET

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

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

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

    hex可以轉成源代碼

    ,可以通過以下幾種方法嘗試獲取源代碼的近似形式: 反匯編 : 使用反匯編工具可以將Hex文件中的機器碼轉換回匯編語言。匯編語言是一種低級語言,它更接近于機器碼,但仍然具有一定的可讀性。 通過反匯編得到的匯編代碼可以提供程序
    的頭像 發表于 09-02 10:41 ?2136次閱讀
    主站蜘蛛池模板: 天天做天天添婷婷我也去 | 国内自拍 亚洲系列 欧美系列 | 1000rt人体1000欧美 | 深夜桃色影院 | 欧洲妇女成人淫片aaa视频 | 视频在线观看高清免费看 | 欧美猛交xxxx乱大交 | 女人扒开腿让男人桶到爽 | 久久久国产乱子伦精品 | wwwwwww色| 黄色综合 | 西西人体大胆高清啪啪欧洲 | 欧美亚洲综合另类成人 | 色网视频 | 日本xxxx色视频在线观看免 | 男男gay高h文 | 国产拍拍1000部ww | 97人洗澡人人澡人人爽 | 综合五月天婷婷丁香 | 午夜免费福利影院 | 天天干精品 | 久久国产色 | 69国产成人综合久久精品 | 欧美视频一区二区三区在线观看 | 亚洲欧洲国产精品你懂的 | 淫操 | 俺去啦五月 | 天天草综合 | 亚洲第一成网站 | 毛片网站免费 | 欧美色图亚洲自拍 | 38pao强力打造永久免费高清视频 | 亚洲黄色三级 | 免费一级特黄特色黄大任片 | 青草青青视频 | 色综合一区二区三区 | 永久免费观看黄网站 | 中出丰满大乳中文字幕 | 在线干 | 一级日本大片免费观看视频 | 777777777妇女亚洲|