JetBrains决定对Rust出手!

撰稿丨千山
很早就有人问:JetbrAIns 出了那么多集成开发环境(IDE),诸如IDEA、CLion、PyCharm、phpStorm、GoLand、WebStorm等等,为什么不能整合成一个IDE,一招通吃呢?
显然Jetbrains有自己的考量 。时至今日,Jetbrains依然坚持自己的产品路线:给每种语言打造一个“家” 。
最近,JetBrains瞄上的是Rust,针对这门编程语言新贵,它推出了一个名为RustRover的集成开发环境 。官网显示,这款IDE目前还在抢先体验计划(Early Access Program)中,大家可以免费下载使用并提供反馈 。
此前或许很难想象,专为Rust打造的IDE应该是什么样子 。如今RustRover就给出了其中一个答案 。
一、插件还不够吗?为何押注专用IDE以前,JetBrains只为Rust提供了 IntelliJ Rust 插件 。Rust 的其他插件包括Rust-analyzer和 RLS 。当然也有支持Rust的文本编辑器,但RustRover是第一个转为Rust而设计的IDE 。

JetBrains决定对Rust出手!

文章插图
IDE 通常包括代码编辑器、调试器、编译器和其他功能,以帮助开发人员编写、测试和部署软件 。RustRover的开发人员倡导者Vitaly Bragilevsky介绍说,专用IDE是编程语言成熟的一个重要里程碑 。
为什么要在当前这个节点选择Rust呢?Bragilevsky在回复外媒采访时谈到:“以前,在我们看来,插件就足够了,但后来我们观察到Rust社区及其生态系统发生了一些变化 。社区的状态说服了我们 , 我们真的需要它(独立的Rust IDE) 。”
一个显著趋势是:Rust 社区正在扩大 。
JetBrains 的研究发现,接受调查的开发人员中有56%在过去六个月中开始采用 Rust 。另据《SlashData 23 届开发者国家状态报告》,估算Rust开发者数量已增长至280万 。该报告还显示 , 这一数字在过去两年中增加了两倍 , 使其成为增长最快的开发者社区之一 。
考虑到当前的技术趋势以及该语言不算很长的发展史,Rust的潜力是令人期待的 。在此背景下,JetBrains决定押注Rust 。
与VS Code不同,JetBrains向来提供与特定编程语言和技术配合使用的专用IDE 。比如,WebStorm是大家熟悉的JAVAScript开发工具,PyCharm是支持Python/ target=_blank class=infotextkey>Python 的IDE,CLion是专为开发C及C++所设计的跨平台IDE,GoLand是支持编写Go的IDE,RubyMine 是为Ruby和Rails开发者准备的 IDE 。
那么这款面向Rust开发者的IDE又有哪些特点呢?
二、专为Rust而设计,预览阶段与 IntelliJ IDEA Ultimate兼容有开发者提到,针对Rust的IDE并不容易做 。主要原因有二:其一,很多其他语言运行时暴露出来的问题都需要在Rust编译时提前暴露出来,这部分检查压力自然而然会转移到IDE上 。其二,不同语言有其不同的语法特性 。对于Rust来说就是所有权和生命周期 。
就官网信息来看 , RustRover 目前支持 Rust、Cargo、TOML、Web 和数据库技术,以及 IntelliJ IDEA 的所有功能 , 包括 VCS 集成 。其主要功能特点表现在:
在代码编写方面,RustRover可以通过代码补全、代码生成、实时分析和快速修复、实时模版等方法来提高编码效率 。
在测试、运行、调试方面,可以运行单个测试、测试模块或项目中的所有测试 。失败测试支持跳回相关代码,便于开发人员找到问题所在 。
在Web程序开发方面 , 可以使用内置的HTTP客户端发出 HTTP 请求并分析响应 。虽然Rust 是一种后端语言,但 RustRover也为前端技术和数据库提供支持 , 提供与前端开发的无缝集成 。
在项目管理方面 , RustRover与Cargo 完全集成,并提供代码洞察帮助编辑TOML文件 。允许开发人员直接在IDE中调用Cargo命令 。
在团队协作方面 , 实时编码,并支持直接从 IDE 与他人交谈 。使用Git和Github工作,支持探索提交和拉取请求、创建分支和查看代码 。
当下,RustRover 可以在windows、mac OS 和linux 上运行 。因为还在Early Access Program阶段,所以感兴趣的开发者可以免费试用 。至于什么时候会发布稳定版本,尚无定论,不过官方回复“计划将产品的公开预览持续到最晚2024年9月” 。
因为没有公开路线图,所以RustRover未来还会推出哪些具体功能依旧是个迷 。另外 , JetBrains承诺:“预览阶段,RustRover 的插件版本将与 IntelliJ IDEA Ultimate 和 CLion 兼容 。”至于正式发布后就不好说了 , “我们将与 CLion 团队联系,确定在临近发布日期时CLion的Rust插件的可用性选项 。”


推荐阅读