感謝IT之家網友 有鯽雪狐 的線索投遞!
,deepin 深度操作系統(tǒng)今日正式公布了旗下自研 IDE 開發(fā)工具,經過多年時間研發(fā),deepin-IDE 首次亮相,官方稱最終目標是將分散的內容整合到一起,形成一個高度統(tǒng)一、開放自由、資源豐富的生態(tài)建設利器。
據介紹,deepin-IDE 在內部已經開發(fā)了多年時間,還沒有達到非常完善的地步。同時因為設計人員沒有參與,所以整個界面由研發(fā)人員“原生”設計,非常時尚(素)。
語言支持,圖源深度操作系統(tǒng)公眾號,下同
代碼遷移
調試模式
反向調試
版本管理
deepin-IDE 總體采用基于模塊化框架開發(fā),支持 C / C++、Java、Python 等多種編程語言,每一種開發(fā)語言均是以插件的方式接入。
深度操作系統(tǒng)官方表示,模塊化設計一方面可以縮短產品研發(fā)與制造周期,增加產品系列,提高產品質量,快速應對市場變化;另一方面,也可以減少或消除對環(huán)境的不利影響,方便重用、升級、維修和獨立卸載。其整體結構設計如下圖所示:
如上圖所示,帶顏色的模塊均和特定的語言相關,對應通信中間件用的是 LSP 語言服務協(xié)議,可以基于該協(xié)議實現語法高亮、符號樹、語法樹等功能;調試相關的用的是 DAP(Debug Adapter Protocol) 調試適配協(xié)議,可以基于該協(xié)議實現被調試程序的啟動、運行、斷點命中、單步跳入、單步跳出等常用調試功能。通過中間協(xié)議的適配,解耦了語言業(yè)務功能與實際功能提供者的依賴,讓語言擴展變得可行。
為了進一步提高擴展性,前、后端均以插件方式實現。在前端通過接入一個新的語言插件來實現新語言的擴展,該插件用于實現語言相關的、特殊的業(yè)務邏輯,不用編寫全量的代碼,從而減輕了語言插件的代碼負擔。
在后端,通過插件方式可以更容易接入一個語言服務提供者。
根據上述描述,將語言相關的頂層數據流圖繪制如下:
功能介紹
deepin-IDE 除了包含 IDE 常用功能,如智能編輯器、高度可擴展的命令系統(tǒng)、工程管理、構建管理系統(tǒng)、插件系統(tǒng)等之外,還支持多種兼容協(xié)議、多種開發(fā)語言、代碼版本管理集成、低開銷的實時性能分析工具等。總體而言,IDE 常見功能都在表里:
版本管理
支持主流版本控制系統(tǒng) Git、SVN。
協(xié)議支持
語言支持
支持 C++、C、Java、Python、JavaScript 五大類常用編輯語言,支持常用構建工具 CMake、Maven、Ninja、Gradle 等。
除了上述常見功能,deepin-IDE 還包含一些特有功能,例如反向調試、代碼遷移等。
反向調試
該功能通過進程執(zhí)行歷史回放、事件分類管理、時間軸管理等手段,進一步提升應用的調試效率和開發(fā)能力。
代碼遷移
代碼遷移分析子系統(tǒng)是 deepin-IDE 的一大亮點,可以輔助開發(fā)者將 x86 平臺的 Linux 應用遷移到龍芯、飛騰等國產處理器架構,及統(tǒng)信 UOS 等國產操作系統(tǒng)上,使用該功能可以自動分析出需修改的代碼內容,并給出代碼遷移指導,降低遷移難度,提升遷移效率。
據介紹,自研 IDE 可以提供 DTK、各種二開接口的開發(fā)支持,開發(fā)者可以基于開發(fā)庫開發(fā)出對應業(yè)務功能的應用。其次,自研 IDE 可以默認提供“玲瓏”打包格式,一次打包即可覆蓋全 Linux 生態(tài)環(huán)境。最后,為了便于開發(fā)者交流,增強社區(qū)活性,自研 IDE 可以集成開發(fā)者平臺,使開發(fā)者匯聚在一起交流開發(fā)經驗。
深度操作系統(tǒng)官方表示,deepin-IDE自研代碼 14 萬余行。為了避免重復造輪子,deepin-IDE采用了一些開源終端組件、功能組件:
深度操作系統(tǒng)官方還回應稱,deepin-IDE 和 VS Code 沒有關聯(lián)。
deepin-IDE 代碼現已公開地址,IT之家附倉庫和下載地址如下:
倉庫地址:
下載鏈接:
廣告聲明:文內含有的對外跳轉鏈接,用于傳遞更多信息,節(jié)省甄選時間,結果僅供參考,IT之家所有文章均包含本聲明。
鄭重聲明:此文內容為本網站轉載企業(yè)宣傳資訊,目的在于傳播更多信息,與本站立場無關。僅供讀者參考,并請自行核實相關內容。
|