温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

2021年用DE开发Rust的方法是什么

发布时间:2021-10-18 16:09:19 来源:亿速云 阅读:157 作者:iii 栏目:编程语言

本篇内容介绍了“2021年用DE开发Rust的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

Rust 语言服务器:Rust Language Server

Rust 语言服务器(RLS)基于 LSP(Language Server Protocol),即语言服务器协议,LSP 由红帽、微软和 Codenvy 联合推出,可以让不同的程序编辑器与集成开发环境(IDE)方便地嵌入各种编程语言,允许开发人员在最喜爱的工具中使用各种语言来编写程序。

它通过用于开发工具和语言服务器间通信的 JSON-RPC 标准,能够让编程工具提供实时反馈的详细信息并以此实现多种强大功能,比如符号搜寻、语法分析、代码自动补全、移至定义、描绘轮廓与重构等。Rust 语言服务器集成了这些逻辑作为后端,并通过标准的 LSP 提供给前端工具,它被设计为与前端无关,可以被不同的编辑器和 IDE 广泛采用,但目前项目团队仅在 VS Code 中进行测试。用户可以在 VS Code 扩展商店中找到基于 RLS 实现的 Rust 官方插件。

2021年用DE开发Rust的方法是什么

这个就是 Rust 官方为 Visual Studio Code 提供的 Rust 插件,该插件最初是 Rust 官方语言服务器(RSL)的前端参考实现,现在也支持另一个来自社区维护的 Rust 服务器 rust-analyzer(RA),用户可根据个人偏好在 RSL 或者 RA 之间选择安装一个。该插件支持:

  • 代码补全

  • jump to definition、peek definition、find all references 与 symbol search

  • 类型和文档悬停提示

  • 代码格式化

  • 重构

  • 错误纠正并应用建议

  • snippets

  • 构建任务

值得一提的是 snippets(代码片段)和构建任务这两个特性。

snippets 是扩展为通用样板的代码模板。输入时,Intellisense 会将代码段名称包括在内作为选项,可供快捷键选中。提供了以下 snippets:

  • for - 创建循环

  • unimplemented

  • unreachable

  • print(ln)

  • assert(_eq)

  • macro_rules - 声明宏

  • if let Option - 在某些情况下执行 if let 语句

  • spawn - 创建线程

  • extern crate - 插入 extern crate 语句

此 Rust 插件提供了使用相关的 cargo 命令进行构建、运行和测试的任务,可以使用 ctrl + shift + b 进行构建,可通过命令面板中的“运行任务”查看其它任务。这些任务内容写在 task.json 中,插件不会覆盖现有任务,因此可以自定义任务。

社区驱动的 Rust 语言服务器 rust-analyzer

rust-anlyzer(RA)是除了 RSL 以外的另一个 Rust 语言服务器,由社区驱动开发。自 2019 年末发布第一个预编译 Release 以来,RA 都会在每周二稳定发布新版本并保持至今。经过快速的迭代,目前 RA 各方面的优化和提升已经超越 RSL,所以也被官方纳入 RSL 2.0 计划的一部分。Rust 的 VS Code 官方插件也已经增加了对 RA 的支持。 

RA 目前已经支持 Vim、Emac、Sublime Text 3 和 VSCode 等编辑器,可通过官方文档获取详细的安装指导。

Rust 代码补全程序:Racer

前面提到 RSL 和 RA 都是 Rust 语言服务器,作为 IDE 与编辑器的后端提供通用能力。而 Racer 是 Rust 语言服务器中的一个静态库,它提供了代码自动补全功能。 

许多 IDE 等工具可以轻松集成这样的底层功能,目前包括以下工具都有集成 Racer 的相关实现:

  • Eclipse

  • Emacs

  • Gedit

  • Gnome Builder

  • Kate

  • Sublime Text

  • Vim

  • VS Code

  • Atom

  • Kakoune

IntelliJ 的 Rust 插件:IntelliJ Rustintellij-toml

IntelliJ Rust 是 IntelliJ 的 Rust 插件,采用 Kotlin 开发,功能特性包括:

  • 支持原生代码提示

  • 支持强大的快捷键功能

  • 代码快速格式化

  • snippets

IntelliJ Rust 和 intellij-toml 为 IDEA,CLion,PyCharm 和其他 JetBrains IDE 带来了 Rust 和 TOML 支持。

语言支持包括语法突出显示,完成,导航和其他代码洞察功能。可以使用 Cargo 命令并运行 Clippy 或 Rustfmt,而无需离开 IDE。CLion 和 IntelliJ IDEA Ultimate 中提供了调试器和分析器。CLion 的集成还支持 CPU 分析。对于所有其他 IDE,可以使用本机调试插件进行调试。

C/C++ 跨平台集成开发环境:CLion

2021年用DE开发Rust的方法是什么

CLion 是专门用于 C/C++ 开发的 IDE,它的特性包括:

  • 智能 C/C++ 编辑:原生 C/C++ 支持,包括现代 C++ 标准、libc++ 和 Boost。

  • 导航能力:即时导航到字符的声明或上下文用法,在整个项目中按名称搜索类、文件与字符,并且提供具有结构和层次结构视图的代码库。

  • 代码生成:通过简单的快捷键就可以完成一些代码生成操作,包括:添加类成员、重写/实现函数、生成构造函数/析构函数、getter/setter,判断等式、关系运算和流输出运算、使用语句封装代码块与根据实际用法生成声明。

  • 重构:提供重命名符号、在层次结构中上/下移动成员与更改函数签名等功能。

通过 IntelliJ Rust 插件,CLion 提供了对 Rust 的高度支持,除了基本的功能,它还为 Rust 提供了完善的调试器、CPU Profiler 和 Valgrind 内存检查等能力。

Eclipse IDE 的 Rust 插件:Eclipse Corrosion

2021年用DE开发Rust的方法是什么

“2021年用DE开发Rust的方法是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI