繁體簡體

填補空白!統(tǒng)信軟件根社區(qū)deepin推出中國首款信創(chuàng)生態(tài)自研IDE

華夏經(jīng)緯網(wǎng) > 新聞 > 大陸新聞 > 社會綜合      2023-09-04 17:47:11

來源標題:填補空白!統(tǒng)信軟件根社區(qū)deepin推出中國首款信創(chuàng)生態(tài)自研IDE

中國基礎(chǔ)軟件生態(tài)又有突破性進展!

基礎(chǔ)軟件是構(gòu)建數(shù)字經(jīng)濟的底座,隨著我國數(shù)字經(jīng)濟步入深化應(yīng)用、規(guī)范發(fā)展、普惠共享的新階段,國產(chǎn)基礎(chǔ)軟件也步入了發(fā)展快車道,構(gòu)建起基于Linux的開源根社區(qū)+操作系統(tǒng)產(chǎn)業(yè)鏈。

image.png

在數(shù)字化轉(zhuǎn)型和信息技術(shù)應(yīng)用創(chuàng)新的雙輪驅(qū)動下,軟件行業(yè)保持著高速增長。據(jù)工業(yè)和信息化部8月28日發(fā)布數(shù)據(jù)顯示,1月至7月,我國軟件業(yè)務(wù)實現(xiàn)了同比13.6%的高增長。

信創(chuàng)覆蓋的關(guān)鍵行業(yè)以及信創(chuàng)生態(tài)內(nèi)的科技公司均大力投入基于國產(chǎn)基礎(chǔ)軟硬件的技術(shù)及應(yīng)用研發(fā)。然而,軟件開發(fā)工具依然嚴重依賴國際開源及商用工具。

根據(jù)Stackoverflow 2023年調(diào)研顯示,微軟旗下集成開發(fā)環(huán)境Visual Studio Code(開源)和Visual Studio(商用)在其調(diào)研的全球8萬余名專業(yè)開發(fā)者和學(xué)習(xí)者中保持著絕對領(lǐng)先優(yōu)勢。

有開發(fā)者表示,微軟在軟件市場之所以強,一大原因就是,全世界的開發(fā)者都基于微軟的軟件工具研發(fā)軟件,開發(fā)結(jié)束后再把代碼貢獻到微軟收購的Github代碼托管平臺。這意味著軟件開發(fā)的工具、標準、創(chuàng)意都在微軟生態(tài)上。

image.png

我國集成開發(fā)環(huán)境軟件包括個人開發(fā)的LiteIDE,也包括科技大廠如華為推出的CodeArts,及阿里推出的OpenSumi等。

而在桌面操作系統(tǒng)領(lǐng)域,我國也終于迎來新的突破!

近日,統(tǒng)信軟件運營的桌面操作系統(tǒng)根社區(qū)deepin發(fā)布了全球首款自主研發(fā)、面向信創(chuàng)生態(tài)的集成開發(fā)環(huán)境deepin-IDE,完成了從桌面操作系統(tǒng)根社區(qū)deepin、商業(yè)發(fā)行版UOS、到軟件開發(fā)工具的國產(chǎn)基礎(chǔ)軟件生態(tài)閉環(huán)。

除了解決卡脖子,自研IDE意味著什么?

長期以來,由于缺乏國產(chǎn)集成開發(fā)環(huán)境(IDE),眾多應(yīng)用軟件開發(fā)廠商不得不嚴重依賴國外的集成開發(fā)環(huán)境。全球范圍內(nèi)軟件開發(fā)工具的核心廠商主要包括Microsoft、JetBrains、Atlassian、Eclipse等,共占有市場份額約45%。

然而,無論是國際開源還是商用IDE,均沒有針對國產(chǎn)操作系統(tǒng)進行專門優(yōu)化,客觀上加大了國產(chǎn)操作系統(tǒng)上應(yīng)用開發(fā)的難度。

image.png

首先,國產(chǎn)硬件平臺種類多、差異大、軟件適配工作量大的難題亟需解決。

國產(chǎn)CPU架構(gòu)多樣,包括飛騰、鯤鵬、龍芯、申威、海光、兆芯等平臺。架構(gòu)的多樣性導(dǎo)致各自軟件棧不統(tǒng)一,即使操作系統(tǒng)層面解決掉一部分架構(gòu)差異問題,應(yīng)用還是要適配調(diào)試,給軟件開發(fā)帶來了沉重負擔(dān)。

集成開發(fā)環(huán)境是用于提供程序開發(fā)環(huán)境的應(yīng)用程序,一般包括代碼編輯器、編譯器、調(diào)試器和圖形用戶界面等工具。

集成開發(fā)環(huán)境研制涉及大量的核心技術(shù),包括多種語言的編譯器、解釋器、調(diào)試器,語義補全、代碼重構(gòu)、項目工程管理、代碼版本管理、大型圖形框架構(gòu)建,高效的進程間通訊機制、多平臺支持等,是進行各類軟件研發(fā)的必備基礎(chǔ)設(shè)施。

軟件開發(fā)各個環(huán)節(jié)的工具基本都被包括在內(nèi),同時包括在各個平臺都運行良好的基本軟件庫。這些工具和軟件庫在各個國產(chǎn)硬件平臺上做到統(tǒng)一,可以大大降低跨硬件平臺開發(fā)的難度。

其次,國產(chǎn)軟件開發(fā)工具鏈能讓軟件全生命周期擺脫對國外軟件的依賴。

隨著信息技術(shù)應(yīng)用創(chuàng)新的深入,國產(chǎn)硬件和國產(chǎn)軟件已經(jīng)在很多領(lǐng)域可以替代國外同類軟件。

但是在軟件開發(fā)領(lǐng)域,仍然無法擺脫對國外的集成開發(fā)環(huán)境的依賴。

國外集成開發(fā)環(huán)境存在不支持國產(chǎn)軟硬件適配、調(diào)試性能差等諸多問題,加大了國產(chǎn)操作系統(tǒng)上應(yīng)用開發(fā)的難度,阻礙了國產(chǎn)軟件發(fā)展。

隨著信創(chuàng)市場的快速發(fā)展,應(yīng)用生態(tài)需求的急劇增大,以及集成開發(fā)環(huán)境的重要地位,市場迫切需要一款自主可控的集成開發(fā)環(huán)境,以適應(yīng)國產(chǎn)化軟硬件系統(tǒng)的特點。

這樣,才能從根本上實現(xiàn)一次開發(fā)多架構(gòu)編譯部署,簡化應(yīng)用開發(fā)過程,統(tǒng)一國內(nèi)軟件開發(fā)方式和開發(fā)庫,提高國產(chǎn)軟件質(zhì)量和互操作性,降低軟件開發(fā)成本,最終打破國外在集成開發(fā)環(huán)境領(lǐng)域的壟斷,解決“卡脖子”問題。

專注自研,打造國產(chǎn)平臺生產(chǎn)力工具

由deepin推出的deepin-IDE,傳承了“專注自研,貢獻開源”的技術(shù)基因,相關(guān)技術(shù)發(fā)明專利6篇。

deepin-IDE通過對國產(chǎn)硬件架構(gòu)和國產(chǎn)操作系統(tǒng)特點深度優(yōu)化和定制,簡化國產(chǎn)平臺應(yīng)用開發(fā)成本,可實現(xiàn)在國產(chǎn)平臺上一次開發(fā)多架構(gòu)編譯部署。

deepin-IDE除了包含IDE常用功能,如智能編輯器、高度可擴展的命令系統(tǒng)、工程管理、代碼版本管理集成、構(gòu)建管理系統(tǒng)、插件系統(tǒng)等之外,還支持代碼遷移、語義補全、語法高亮、重構(gòu)支持、反向調(diào)試、低開銷的實時性能分析工具等特色功能。

image.png

圖1 IDE進入編輯模式效果圖

目前,該平臺支持C++、C、java、python、java script五大類 最常用編輯語言;內(nèi)置語言服務(wù)器協(xié)議(LSP)、調(diào)試適配器協(xié)議(DAP);支持主流版本控制系統(tǒng)git、svn;支持常用構(gòu)建工具cmake、maven、ninja、gradle 等。

deepin-IDE采用了模塊化的方式對軟件系統(tǒng)進行模塊化劃分,實現(xiàn)各個軟件功能的逐層分解和解耦合,便于軟件系統(tǒng)的開發(fā)和集成。

模塊化設(shè)計一方面可以縮短產(chǎn)品研發(fā)與制造周期,增加產(chǎn)品系列,提高產(chǎn)品質(zhì)量,快速應(yīng)對市場變化;另一方面,也可以減少或消除對環(huán)境的不利影響,方便重用、升級、維修和獨立卸載。

具體來看,deepin-IDE特色功能主要包含:

低開銷的實時性能分析工具

性能分析功能不足,導(dǎo)致程序優(yōu)化難度大大增加,無法明確優(yōu)化指向。

針對目前國產(chǎn)環(huán)境中程序運行效率普遍偏低的問題,需要開發(fā)新的性能分析方法,用來對程序運行性能進行分析,達到為用戶查找性能瓶頸提供整體全面的統(tǒng)計分析數(shù)據(jù)的目的,提高其定位性能瓶頸的效率,最終提高集成開發(fā)環(huán)境的運行性能。

反向調(diào)試

反向調(diào)試系統(tǒng)通過進程執(zhí)行歷史回放、事件分類管理、時間軸管理等手段,進一步提升應(yīng)用的調(diào)試效率和開發(fā)能力。反向調(diào)試分系統(tǒng)分析程序資源消耗,分析處理器的性能指標,檢測運行程序的周期性性能參數(shù),為優(yōu)化程序的整體結(jié)構(gòu)提供參考,打造更為優(yōu)質(zhì)的程序提供幫助。也是體現(xiàn)集成開發(fā)環(huán)境對于代碼質(zhì)量的檢測體現(xiàn),減少平臺的整體資源消耗,找出系統(tǒng)性能瓶頸。

image.png

圖2 反向調(diào)試模式效果圖

領(lǐng)域開發(fā)支撐

領(lǐng)域開發(fā)庫提供多種面向國產(chǎn)多架構(gòu)、多操作系統(tǒng)平臺優(yōu)化的底層庫和集成控件,使用這些底層開發(fā)庫和集成控件,用戶可以快速開發(fā)和部署面向國產(chǎn)多架構(gòu)、多操作系統(tǒng)的應(yīng)用軟件。

多架構(gòu)編譯系統(tǒng)整合

支持多架構(gòu)國產(chǎn)平臺上的集編碼、編譯、調(diào)試一體,以實現(xiàn)一次開發(fā)多架構(gòu)編譯部署。

深入場景,構(gòu)建開發(fā)者友好的自主生態(tài)

基于對軟件開發(fā)痛點的深入理解,deepin-IDE形成了完備的技術(shù)方案和實施路線,滿足基礎(chǔ)開發(fā)同時,更有諸多個性化亮點:

編輯器支持多種開發(fā)源,支持C、C++、Python、Java等多種常用開發(fā)語言的語法高亮、自動補全、跳轉(zhuǎn)到函數(shù)、重命名等常用功能。

運行時子系統(tǒng)為語言編程開發(fā)提供運行支撐。調(diào)用操作系統(tǒng)內(nèi)置的高級語言解釋器和高級語言虛擬機,完成對代碼的調(diào)試、運行等工作。

集成對開源系統(tǒng)工具的使用能力,讓開發(fā)者在集成開發(fā)環(huán)境中可以方便地使用CPU 分析工具、內(nèi)存分析工具、磁盤分析工具、網(wǎng)絡(luò)分析工具等,提高開發(fā)效率。

用戶行為分析可以用來統(tǒng)一代碼規(guī)范,檢測代碼風(fēng)格。根據(jù)開發(fā)者提交的代碼文檔,統(tǒng)計其代碼格式、注釋規(guī)約、命名規(guī)則的行為檢測,為代碼檢查的統(tǒng)一規(guī)格提供參考約束。

用戶協(xié)同開發(fā)子系統(tǒng)是集代碼開發(fā)、插件開發(fā)、源碼管理、項目構(gòu)建及在線發(fā)布于一體的行業(yè)產(chǎn)品研發(fā)及項目交付平臺系統(tǒng)。在此子系統(tǒng)中可以管理項目團隊,可以不受時間與地點的影響,進行實施人員與開發(fā)人員的協(xié)作,可以安全可靠的進行外包項目管理。

代碼遷移分析子系統(tǒng)是deepin-IDE的一大亮點,可以輔助開發(fā)者將x86平臺的Linux應(yīng)用遷移到龍芯、申威、飛騰等國產(chǎn)處理器架構(gòu),及統(tǒng)信UOS等國產(chǎn)操作系統(tǒng)上,使用該功能可以自動分析出需修改的代碼內(nèi)容,并給出代碼遷移指導(dǎo),降低遷移難度,提升遷移效率。

image.png

圖3 代碼遷移工具界面

此外,其強大的可擴展性為開發(fā)者提供了個性化、可定制的空間。針對近年來興起的生成式AI代碼編輯,deepin-IDE提供了插件接口;國際化方面,目前支持中英文,同時可擴展多語言支持。

deepin-IDE團隊研發(fā)負責(zé)人表示,deepin-IDE旨在打造一款完全自主可控的集成開發(fā)環(huán)境,針對國產(chǎn)硬件架構(gòu)和操作系統(tǒng)特點進行深度優(yōu)化和定制,降低相應(yīng)平臺上應(yīng)用開發(fā)的成本,推進國產(chǎn)集成開發(fā)環(huán)境發(fā)展與標準化,進而促進國產(chǎn)軟件生態(tài)的發(fā)展。同時,deepin-IDE也根植于開源社區(qū),它依賴于scintilla等開源組件,本身也使用了GPLv3協(xié)議開源。它的開發(fā)歷史并不長,因此還只能算是IDE的幼苗。但麻雀雖小,五臟俱全,它不僅有IDE的基本功能,也有上面提到的創(chuàng)新功能。和其它的基礎(chǔ)軟件一樣,IDE也需要多年的打造與完善,比如VSCode至今也發(fā)展了八年,所以開發(fā)IDE確實難度巨大,路雖遠,行則將至。事雖難,做則必成。我們也歡迎全球開源愛好者參與進來,幫助它繼續(xù)成長!

來源:千龍網(wǎng)


責(zé)任編輯:侯哲
熱門評論
互聯(lián)網(wǎng)新聞信息服務(wù)許可證10120170072
京公網(wǎng)安備 11010502045281號
違法和不良信息舉報電話:010-65669841
舉報郵箱:xxjb@huaxia.com

網(wǎng)站簡介 / 廣告服務(wù) / 聯(lián)系我們

主辦:華夏經(jīng)緯信息科技有限公司   版權(quán)所有 華夏經(jīng)緯網(wǎng)

Copyright 2001-2024 By essencecafe.cn