IT之家于9月4日发布消息, 深度操作系统在今日正式公布了其旗下自行研发的IDE开发工具, 该IDE历经多年时间进行研发后首次亮相, 官方宣称其最终目标是要把分散的内容整合在一起, 从而形成一个具备高度统一、开放自由以及资源丰富特点的生态建设利器。

deepin-IDE 开发工具 深度操作系统 自研 IDE 模块化框架 支持 C C++ Java Python_python 操作系统

据传有说明, -IDE 在其内部历经多年予以开发, 然而尚未抵达极为周全完备的程度。与此同时, 鉴于设计人员未曾介入参与, 因而整个界面由研发人员进行“原生”设计, 显得极其具有那种质朴简约的风气, 很有时尚之感呢。

deepin-IDE 开发工具 深度操作系统 自研 IDE 模块化框架 支持 C C++ Java Python_python 操作系统

语言支持,图源深度操作系统公众号,下同

python 操作系统_deepin-IDE 开发工具 深度操作系统 自研 IDE 模块化框架 支持 C C++ Java Python

代码迁移

python 操作系统_deepin-IDE 开发工具 深度操作系统 自研 IDE 模块化框架 支持 C C++ Java Python

调试模式

deepin-IDE 开发工具 深度操作系统 自研 IDE 模块化框架 支持 C C++ Java Python_python 操作系统

反向调试

deepin-IDE 开发工具 深度操作系统 自研 IDE 模块化框架 支持 C C++ Java Python_python 操作系统

版本管理

-IDE 整体选用基于模块化架构来开展开发活动, 它对 C / C++、Java 等诸多编程语言予以支持, 而每一种被支持的开发语言皆是按照插件的形式插接入内的。

深度操作系统官方指出, 模块化设计有着这样的作用, 一方面它能够让产品研发以及制造周期得以缩短, 还能使产品系列有所增加, 并且能提高产品质量, 能够快速地对市场变化做出应对;另一方面, 它还能够将对环境的不利影响进行减少或者消除, 能方便进行重用、升级、维修以至独立卸载。其整体结构设计呈现如下图示:

deepin-IDE 开发工具 深度操作系统 自研 IDE 模块化框架 支持 C C++ Java Python_python 操作系统

按上面所呈现的模样, 带有色彩的模块全都关联性地对应特定的那门语言, 与之相互呼应的通信中间件所采用的是 LSP(也就是语言服务协议), 借助这个协议能够达成诸如语法高亮、符号树以及语法树等方面的功能;涉及调试层面的采用了 DAP(即 Debug 调试适配协议), 凭借该协议能够实现针对被调试程序诸如启动、运行、处在断点命中情况下以及单步跳入还有单步跳出等普遍使用的调试功效。依靠中间协议的适配操作, 将语言业务功能和实际功能提供者之间的依赖实现了解耦, 从而使得语言扩展具备了得以施行的可能性。

以插件方式在前、后端实现, 目的在于进一步提升扩展性, 通过在前端接入新语言插件达成新语言的扩展, 此插件用于实现语言相关特殊业务逻辑, 无需编写全量代码, 减轻了语言插件的代码负担。

在后端,通过插件方式可以更容易接入一个语言服务提供者。

根据上述描述,将语言相关的顶层数据流图绘制如下:

python 操作系统_deepin-IDE 开发工具 深度操作系统 自研 IDE 模块化框架 支持 C C++ Java Python

功能介绍

单独的 IDE, 除了涵盖 IDE 平常会有的功能之外, 像是具备智能特性的编辑器, 拥有高度可扩展性的命令系统, 还有工程管理功能, 构建管理系统以及插件系统等内容, 它还能够支持多种相互兼容的协议, 支持编程语言多种多样, 集成有效的代码版本管理功能, 拥有开销低的实时性能分析工具等。总的来讲, IDE 较为常见的那些功能全都在表格里面:

deepin-IDE 开发工具 深度操作系统 自研 IDE 模块化框架 支持 C C++ Java Python_python 操作系统

版本管理

支持主流版本控制系统 Git、SVN。

deepin-IDE 开发工具 深度操作系统 自研 IDE 模块化框架 支持 C C++ Java Python_python 操作系统

协议支持

python 操作系统_deepin-IDE 开发工具 深度操作系统 自研 IDE 模块化框架 支持 C C++ Java Python

语言支持

对于那些比较常见的、经常会被用到的编辑语言, 像是C++、C、Java这几种, 它都是支持的,另外在常用的那些构建工具当中, 像CMake、Maven、Ninja这类, 也都是支持的。

python 操作系统_deepin-IDE 开发工具 深度操作系统 自研 IDE 模块化框架 支持 C C++ Java Python

上述常见功能之外, -IDE 含有一些特有的功能, 像是反向调试, 还有代码迁移等。

反向调试

该功能借助进程执行历史回放这一方式, 通过事件分类管理与时间轴管理等办法, 进一步提高应用的调试效率以及开发能力。

代码迁移

代码迁移分析子系统算得上是 -IDE 的一大突出亮点, 它能够协助开发者把 x86 平台的 Linux 应用转移到龙芯、飞腾等国产处理器架构上, 而且还能转移到统信 UOS 等国产操作系统上, 运用这个功能能够自动剖析出需要修改的代码内容, 并且给出代码迁移的指导, 进而降低迁移的难度, 提高迁移的效率。

据称, 自行研发的 IDE 能够给予 DTK 以及各类二开接口的开发方面的支持, 在此状态下, 开发者能够凭借开发库去开发出与对应业务功能相匹配的应用。其次, 自行研发的 IDE 能够在默认状态下提供“玲珑”这种打包格式, 经由一次打包就能够将全 Linux 生态环境涵盖在内。最后, 为了让开发者之间的交流变得更为便利, 并且令社区活性得以增强, 自行研发的 IDE 能够把开发者平台进行集成, 进而促使开发者聚合到一处去交流开发经验。

深度操作系统官方宣称, -IDE 有着自研代码达 14 万多余行的情况。因要防止重复制造轮子, -IDE 运用了一些开源终端组件、功能组件。

deepin-IDE 开发工具 深度操作系统 自研 IDE 模块化框架 支持 C C++ Java Python_python 操作系统

-深度操作系统官方作出回应, 声称, -IDE与VS Code不存在关联。

python 操作系统_deepin-IDE 开发工具 深度操作系统 自研 IDE 模块化框架 支持 C C++ Java Python

-IDE 代码现已公开地址,IT之家附仓库和下载地址如下:

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐