2006 年對于 Eclipse C/C++ 開發(fā)工具 (CDT) 環(huán)境來說是具有里程碑意義的一年,幾乎在項目的每個領(lǐng)域都有增長。目前,開發(fā)人員每月下載 CDT 超過 85,000 次(高于 2006 年初的 60,000 次),并且有十幾個提交者正在開發(fā)下一個 CDT 版本。同時,許多工具供應(yīng)商現(xiàn)在重新分發(fā) Eclipse 和 CDT 及其產(chǎn)品,特別是在 CDT 已成為事實上的標準開發(fā)環(huán)境的嵌入式市場。
CDT 中有什么
CDT 主要關(guān)注軟件開發(fā)的編輯、構(gòu)建和調(diào)試周期。它的主要目標是提高程序員用 C 和 C++ 編寫代碼的效率,同時利用開發(fā)人員已經(jīng)用于構(gòu)建和調(diào)試的高質(zhì)量工具鏈。最初,CDT 項目專注于使用 GNU 工具鏈的開發(fā)人員,包括 gcc 和 gdb,這是迄今為止開源社區(qū)中最流行的工具集。但是,CDT 項目現(xiàn)在也支持其他環(huán)境,直接或通過商業(yè)供應(yīng)商提供的基于 CDT 的環(huán)境。
CDT 遵循與其他基于 Eclipse 的開發(fā)環(huán)境相同的用戶界面和項目資源結(jié)構(gòu)。用戶界面包含一組視圖和編輯器,這些視圖和編輯器顯示為 Eclipse 窗口的選項卡式部分。視圖顯示有關(guān)項目的各種信息,編輯器允許開發(fā)人員更改項目中的文件??梢詫⒁晥D組織到稱為透視圖的頁面中,這些頁面可以自定義視圖的布局以用于各種目的,例如編輯和調(diào)試。用戶還可以根據(jù)自己的特定需求調(diào)整和保存視角。圖 1 顯示了 C/C++ 透視圖。
圖 1: C/C++ 透視圖
Eclipse 中的項目是用戶使用的頂級資源。通常,項目映射到用戶文件系統(tǒng)中的根目錄。Eclipse 插件可以遞歸地訪問該目錄及其子目錄中的每個文件。Eclipse 還提供了將其他文件和目錄鏈接到項目結(jié)構(gòu)中的機制,但不提供排除文件的通用機制。
Eclipse 平臺提供對文件和項目的管理。CDT 擴展了這種管理以區(qū)分源文件、目標文件和其他文件類型;它還提供文件內(nèi)容的結(jié)構(gòu)化表示。使用這種表示,CDT 填充大綱視圖(顯示當前文件中的目錄)和 C/C++ 項目視圖(顯示可用項目中的目錄)。
CDT 核心還維護每個項目的符號數(shù)據(jù)庫。這個稱為索引的數(shù)據(jù)庫允許許多功能提供源代碼分析和導(dǎo)航。例如,用戶可以在源代碼中選擇一個函數(shù)名稱并進行搜索以找到對該函數(shù)的所有引用。然后,用戶可以調(diào)用重命名重構(gòu)功能來更改整個項目中該函數(shù)的名稱。
CDT 編輯器提供了開發(fā)人員在高級集成開發(fā)環(huán)境 (IDE) 中所期望的許多生產(chǎn)力功能。最大的生產(chǎn)力增強器是內(nèi)容輔助功能,它使用來自 CDT 的內(nèi)置解析器的信息來提供有效的代碼完成,給定當前包含光標的上下文。編輯器還提供代碼著色,區(qū)分關(guān)鍵字和標識符以增強代碼可讀性,以及括號匹配和自動制表符,使復(fù)雜的代碼結(jié)構(gòu)更容易輸入。
CDT 還包含以下兩個構(gòu)建系統(tǒng):
標準構(gòu)建:重用用戶現(xiàn)有的構(gòu)建基礎(chǔ)設(shè)施。此功能對于在傳統(tǒng) make 文件上投入巨資以確保高質(zhì)量、可重復(fù)構(gòu)建的項目團隊尤其重要。
托管構(gòu)建:允許工具供應(yīng)商提供高級用戶界面來設(shè)置編譯和鏈接選項;它還自動調(diào)用構(gòu)建。托管構(gòu)建對于新項目和寧愿花時間編寫源代碼而不是創(chuàng)建構(gòu)建文件的用戶很有用。
CDT 調(diào)試透視圖提供了調(diào)試會話的可視化(參見圖 2)。原生調(diào)試器(如 gdb)處理執(zhí)行應(yīng)用程序、設(shè)置斷點和提取變量值的具體細節(jié)。表 1 總結(jié)了調(diào)試透視圖提供的可視化。
此視圖顯示器
調(diào)試當前調(diào)試會話以及正在調(diào)試的應(yīng)用程序的線程和堆棧幀
變量當前堆棧幀的變量值
記憶內(nèi)存的二進制內(nèi)容
拆卸當前執(zhí)行位置的指令的匯編代碼
表格1
圖 2: CDT 調(diào)試透視圖提供了調(diào)試會話的可視化
CDT 4.0 中的新功能
隨著 CDT 貢獻者的大量涌入,新版本將引入一些令人興奮的功能,以改善用戶體驗、提高生產(chǎn)力并提供更大的可擴展性。正在開發(fā)的功能包括:
內(nèi)部構(gòu)建器:通過消除處理 make 文件的需要來提高構(gòu)建性能。為了確定構(gòu)建必須處理哪些文件,Internal Builder 使用 Eclipse 跟蹤文件更改的能力并使用存儲在 CDT 源索引中的文件間依賴關(guān)系信息。構(gòu)建器可以并行化編譯器以在多核機器上提供更快的構(gòu)建時間。
支持預(yù)建索引信息:為了進一步提高索引性能,CDT 索引器將允許軟件開發(fā)工具包 (SDK) 供應(yīng)商,包括主要操作系統(tǒng)供應(yīng)商,為 SDK 提供的頭文件預(yù)建索引信息。索引器然后可以將此信息與用戶代碼的索引集成,從而無需在用戶環(huán)境中解析 SDK 頭文件。
增強的索引信息: CDT 團隊增強了捕獲的索引信息以啟用新的導(dǎo)航
和源代碼分析視圖。Call Hierarchy View(圖 3)允許在函數(shù)和它們調(diào)用或被調(diào)用的函數(shù)之間導(dǎo)航。Include Hierarchy View 允許基于包含關(guān)系在文件之間導(dǎo)航,Type Hierarchy View 可以基于繼承關(guān)系在 C++ 類之間導(dǎo)航。
圖 3:調(diào)用層次結(jié)構(gòu)視圖
對 Windows SDK 的支持:最近,Microsoft 提供了它的編譯器作為其 Windows SDK 的免費下載。CDT 4.0 將包括構(gòu)建和調(diào)試支持,讓這些工具與 CDT 項目一起工作。因此,開發(fā)人員將不再需要在 Windows 上使用 GNU 工具,這些工具由于需要仿真環(huán)境(如 cygwin)或不完整的 SDK 支持(如 mingw)而存在問題。這種構(gòu)建和調(diào)試支持還將為 Visual Studio 用戶在未來將他們的項目遷移到 CDT 打開大門。
項目生成框架:許多針對特定平臺的 IDE 可以為各種項目類型生成框架項目。例如,桌面 GUI 應(yīng)用程序的項目可以生成足夠的源代碼以使框架運行并在屏幕上顯示窗口。此樣板代碼為開發(fā)人員在構(gòu)建項目時提供了一個良好的開端。CDT 4.0 將為此類項目生成提供框架。
CDT 4.0 將成為 CDT 的里程碑式版本。除了允許 CDT 團隊確定 API 之外,該版本還引入了新功能,使 CDT 成為所有開發(fā)人員構(gòu)建 C/C++ 應(yīng)用程序的有吸引力的環(huán)境,無論他們針對哪個平臺。
審核編輯:郭婷
-
WINDOWS
+關(guān)注
關(guān)注
4文章
3553瀏覽量
88994 -
C++
+關(guān)注
關(guān)注
22文章
2113瀏覽量
73742 -
編譯器
+關(guān)注
關(guān)注
1文章
1639瀏覽量
49197
發(fā)布評論請先 登錄
相關(guān)推薦
評論