Python知識(shí)分享網(wǎng) - 專(zhuān)業(yè)的Python學(xué)習(xí)網(wǎng)站 學(xué)Python,上Python222
深度 deepin-IDE 正式亮相,全面開(kāi)源,真正的完全自研!
匿名網(wǎng)友發(fā)布于:2023-09-13 22:02:53
(侵權(quán)舉報(bào))
(假如點(diǎn)擊沒(méi)反應(yīng),多刷新兩次就OK!)

deepin 社區(qū)正式官宣 deepin-IDE(深度集成開(kāi)發(fā)環(huán)境)—— 由深度公司自主研發(fā),具有多語(yǔ)言、跨平臺(tái)兼容特性的輕量級(jí)集成開(kāi)發(fā)環(huán)境。

 

功能介紹

deepin-IDE 除了包含 IDE 常用功能,如智能編輯器、高度可擴(kuò)展的命令系統(tǒng)、工程管理、構(gòu)建管理系統(tǒng)、插件系統(tǒng)等之外,還支持多種兼容協(xié)議、多種開(kāi)發(fā)語(yǔ)言、代碼版本管理集成、低開(kāi)銷(xiāo)的實(shí)時(shí)性能分析工具等。

deepin-IDE 目前支持 C++、C、Java、Python、JavasSript 五種主流編程語(yǔ)言;內(nèi)置語(yǔ)言服務(wù)器協(xié)議(LSP)、調(diào)試適配器協(xié)議(DAP);支持主流版本控制系統(tǒng) Git、SVN;支持常用構(gòu)建工具 Cmake、Maven、Ninja、Gradle 等。

功能界面預(yù)覽

語(yǔ)言支持

代碼遷移

調(diào)試模式

反向調(diào)試

版本管理

根據(jù)官方的介紹,deepin-IDE 采用了一些開(kāi)源終端組件、功能組件,自研代碼 14 萬(wàn)余行。

此外,deepin-IDE 與 VS Code 沒(méi)有關(guān)聯(lián)。

據(jù)了解,deepin-IDE 已經(jīng)在內(nèi)部開(kāi)發(fā)了多年,之所以一直都默默無(wú)聞,是因?yàn)檫@期間都在不斷完善特色功能,并攻克一些技術(shù)難題,還沒(méi)有達(dá)到非常完善的地步。此外,由于缺少設(shè)計(jì)人員參與,整個(gè)界面由研發(fā)人員 “原生” 設(shè)計(jì),非常樸素。

deepin-IDE 架構(gòu)介紹

總體采用基于模塊化框架開(kāi)發(fā),支持 C/C++、Java、Python 等多種編程語(yǔ)言,每一種開(kāi)發(fā)語(yǔ)言均是以插件的方式接入。

其整體結(jié)構(gòu)設(shè)計(jì)如下圖所示:

如上圖所示,帶顏色的模塊均和特定的語(yǔ)言相關(guān),對(duì)應(yīng)通信中間件用的是 LSP(Language Server Protocol) 語(yǔ)言服務(wù)協(xié)議,可以基于該協(xié)議實(shí)現(xiàn)語(yǔ)法高亮、符號(hào)樹(shù)、語(yǔ)法樹(shù)等功能;調(diào)試相關(guān)的用的是 DAP(Debug Adapter Protocol) 調(diào)試適配協(xié)議,可以基于該協(xié)議實(shí)現(xiàn)被調(diào)試程序的啟動(dòng)、運(yùn)行、斷點(diǎn)命中、單步跳入、單步跳出等常用調(diào)試功能。

通過(guò)中間協(xié)議的適配,解耦了語(yǔ)言業(yè)務(wù)功能與實(shí)際功能提供者的依賴(lài),讓語(yǔ)言擴(kuò)展變得可行。