deepin 社区正式官宣 deepin-IDE(深度集成开发环境)——由深度公司自主研发,具有多语言、跨平台兼容特性的轻量级集成开发环境。
功能介绍
deepin-IDE 除了包含 IDE 常用功能,如智能编辑器、高度可扩展的命令系统、工程管理、构建管理系统、插件系统等之外,还支持多种兼容协议、多种开发语言、代码版本管理集成、低开销的实时性能分析工具等。
deepin-IDE 目前支持 C++、C、Java、Python、JavasSript 五种主流编程语言;内置语言服务器协议(LSP)、调试适配器协议(DAP);支持主流版本控制系统 Git、SVN;支持常用构建工具 Cmake、Maven、Ninja、Gradle 等。
功能界面预览
- 语言支持
- 代码迁移
- 调试模式
- 反向调试
- 版本管理
根据官方的介绍,deepin-IDE 采用了一些开源终端组件、功能组件,自研代码 14 万余行。
此外,deepin-IDE 与 VS Code 没有关联。
据了解,deepin-IDE 已经在内部开发了多年,之所以一直都默默无闻,是因为这期间都在不断完善特色功能,并攻克一些技术难题,还没有达到非常完善的地步。此外,由于缺少设计人员参与,整个界面由研发人员“原生”设计,非常朴素。
deepin-IDE 架构介绍
总体采用基于模块化框架开发,支持 C/C++、Java、Python等多种编程语言,每一种开发语言均是以插件的方式接入。
其整体结构设计如下图所示:
如上图所示,带颜色的模块均和特定的语言相关,对应通信中间件用的是 LSP(Language Server Protocol) 语言服务协议,可以基于该协议实现语法高亮、符号树、语法树等功能;调试相关的用的是 DAP(Debug Adapter Protocol) 调试适配协议,可以基于该协议实现被调试程序的启动、运行、断点命中、单步跳入、单步跳出等常用调试功能。
通过中间协议的适配,解耦了语言业务功能与实际功能提供者的依赖,让语言扩展变得可行。
目前,deepin-IDE 已全面开源:
仓库地址:
-
GitHub: https://github.com/linuxdeepin/deepin-unioncode
-
Gitee: https://gitee.com/deepin-community/deepin-unioncode
相关文档:deepin-unioncode 用户使用手册
延伸阅读
- 深度 deepin 开源自研编程语言:Unilang