江苏快三推存号码—2019 年可以选用这些 Rust IDE/DE

h4cd
 h4cd
发布于 2019年10月18日
收藏 59

最近一段时间 Rust 似乎开始从默默无闻走向聚光灯下,从微软宣布探索采用 Rust 替代 C/C++,到 Linux 内核维护者表示愿意接受 Rust 作为驱动开发语言,再到 AWS 公开表示赞助 Rust,同时连续 4 年被票选为 Stack 北京快三分布走势图 —主页-verflow 最受欢迎语言的光辉事迹又被搬出来。频频高亮曝光,让“Rust 到底能不能成?”、“以后不用学 C/C++ 了?”、“Rust 入门使用真的很难吗?”等讨论不绝于耳。

这其中开发者讨论得比较多的一个点是“都 江苏快三推存号码—2019 年了,Rust 还没有一个专门的 IDE 可以用来开发”,不用多辩驳我们都知道 IDE 对于一个编程语言的采用来说太重要了,像下图这样的开发者心声,其实表达出的仅仅是没有 IDE 不利的一个方面,也就是对新手不友好,而功能齐全的专业 IDE 实际上完全不仅仅只对新手产生影响:

(@Tinian )

有开发者回应,表示现在 Rust 确实没有比较专业的 IDE,但是已经有了语言服务器这种底层基础与各种插件支持,甚至“IDE 专家”JetBrains 在其当前提供的 IntelliJ Rust 插件成熟之后也会让其像 GoLand 一样独立出来。

(@志田未来 、@dwingo 、@墨名次 、@warriorsfl)

围观他们的讨论 >>> http://mentanx.com/news/110621/aws-sponsorship-of-the-rust

江苏快三推存号码就着这个话题,我们整理了一份比较有代表性的 Rust 可用 IDE 与相关插件等工具的列表,分享给开发者。

Rust 语言服务器:Rust Language Server

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

它通过用于开发工具和语言服务器间通信的 JS北京快三分布走势图 —主页-N-RPC 标准,能够让编程工具提供实时反馈的详细信息并以此实现多种强大功能,比如符号搜寻、语法分析、代码自动补全、移至定义、描绘轮廓与重构等。江苏快三推存号码Rust 语言服务器集成了这些逻辑作为后端,并通过标准的 LSP 提供给前端工具,它被设计为与前端无关,可以被不同的编辑器和 IDE 广泛采用。

基于 Rust 语言服务器的 VS Code 插件:rls-vscode

这个就是 Rust 官方为 Visual Studio Code 提供的 Rust 语言服务器前端参考实现,它支持:

  • 代码补全
  • 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 北京快三分布走势图 —主页-ption - 在某些情况下执行 if let 语句
  • spawn - 创建线程
  • extern crate - 插入 extern crate 语句

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

IntelliJ 的 Rust 插件:IntelliJ Rust

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

  • 支持原生代码提示

  • 支持强大的快捷键功能

  • 代码快速格式化

  • snippets

该插件有较好的兼容性,兼容 2019.2 版本之后的所有基于 IntelliJ 的 IDE。可用功能集之间存在以下差异: 

(*) 表示:IDEA 社区版、PyCharm 社区版、PyCharm Edu 和 IntelliJ IDEA Edu 版。

从上表中也可以看得出来,CLion 是集成了最多功能支持的 IDE,也因此,许多开发者基于 IntelliJ 的 Rust 开发环境直接就是:IntelliJ Rust+CLion。

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

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

Eclipse Corrosion 是 Eclipse IDE 中的 Rust 版本,本质上是一个 Eclipse IDE 的 Rust 插件,通过与 Rust 语言服务器和 Cargo 集成提供了丰富的开发与调试功能。它可以作为完整的 Eclipse 软件包下载。

江苏快三推存号码除了 Rust 语言服务器提供的功能外,Corrosion 还可以帮助用户更好地调试 Rust 程序,比如提供了查看变量、GDB 控制台与断点等功能。另一方面,由于基于 Eclipse,所以像项目大纲、暗黑主题、问题查看与 Git 集成等特性也支持,Eclipse 用户可以轻松适应。

Rust 代码补全程序:Racer

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

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

  • Eclipse

  • Emacs

  • Gedit

  • Gnome Builder

  • Kate

  • Sublime Text

  • Vim

  • VS Code

  • Atom

  • Kakoune

Vim 的 Rust 插件:rust.vim

Rust 官方实现了一个 Vim 插件 rust.vim,爱折腾的开发者可以用来配置 Vim 下的 Rust 开发环境。rust.vim 提供了 Rust 文件检测、语法高亮、格式设置与语法检测工具 Syntastic 集成等功能。特性包括:

  • Syntastic 错误检测:rust.vim 默认将自动将 cargo 作为语法检查器注册到 Syntastic。
  • 可集成 Tagbar 查看源码
  • rustfmt 格式化代码:安装了 rustfmt 的话,可以使用 :RustFmt 命令格式化代码。
  • Playpen 集成::RustPlay 命令会将当前选择内容发送给 Rust playpen,如果未选择任何内容则将当前缓冲区发送给 Rust playpen。
  • 测试:在 cargo 项目中,:RustTest 命令将即时运行测试。

工具的整理先到这里结束了,感兴趣的开发者可以分别单击项目标题查看详细介绍,找到自己最得心应手的 Rust 开发环境。

其实国外也已经有开发者整理了一份更为全面的 IDE 与插件等工具对 Rust 支持状态的概述表单:

大致可以通过上边这个图表了解到支持情况,详情可以查看:

http://areweideyet.com

Rust 很强大,希望你也能上这条锈迹斑斑的船。

---

另外,因为不免遗漏,所以本文工具列表将持续更新;欢迎提供相关工具线索,我们会持续补全。值得一提的是,文中提到了 Vim 极客式的配置插件,自然会有开发者要说到 Emacs、Sublime 与 Atom 也有类似的实现,欢迎提交线索。

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 北京快三分布走势图 —主页-SCHINA 社区 [http://mentanx.com]
本文标题:江苏快三推存号码—2019 年可以选用这些 Rust IDE/DE
加载中

精彩评论

中奖啦
中奖啦
这些等 IDE 出来再去学的人,等到 IDE 真的出来后估计也是不会学的,只是想找个理由而已。
__JM_Joy__
__JM_Joy__
目前clion装rust插件最好用。
Praying
Praying
记得前几年,大家用sublime一样写go写的很happy
f
freezingsky
让我想起了GoLang, 安装基础环境 , 可以让新手凉半截身子
rz
rz
按以下配置可以成功编译:

Current installation options:


default host triple: x86_64-pc-windows-msvc
default toolchain: stable
profile: default
modify PATH variable: yes

1) Proceed with installation (default)
2) Customize installation
3) Cancel installation
>2

I'm going to ask you the value of each of these installation options.
You may simply press the Enter key to leave unchanged.

Default host triple?
x86_64-pc-windows-gnu

Default toolchain? (stable/beta/nightly/none)
stable

Profile (which tools and data to install)? (minimal/default/complete)
default

Modify PATH variable? (y/n)
y

最新评论(33

chen0x00
chen0x00
VSCode和Sublime配合Rust Language Server也可以的
来自山卡拉的你
来自山卡拉的你
clion+rust插件+一个伪装用的CMakeList.txt,就可以完美支持rust+c/cpp,代码提示+代码调试
码农小胖哥
码农小胖哥
等实际工作需要再学 什么都会 等于什么都不会 学完了不用 不出半年就忘完了
缺Q德
缺Q德
确实很多东西只要一段时间没用基本上忘了~~
Fee_Ho
Fee_Ho
以前用vc重汇了菜单。9000多行c++代码。好多年不用c++。全忘光了。不过神奇的是c虽然多年不用。脑中依然清晰。
dwingo
dwingo
因为C语言的语法很少, 而且其它很多语言都包含了C语言的大部分内容,甚至写法也差不多.
Fee_Ho
Fee_Ho
所以这就是我喜欢c的原因。简单通用。不像c++的复杂。也不像go rust那样,开发者把自己的意愿强加给使用者,还说,去这种语法更加优雅。tmd
Praying
Praying
记得前几年,大家用sublime一样写go写的很happy
f
freezingsky
让我想起了GoLang, 安装基础环境 , 可以让新手凉半截身子
缺Q德
缺Q德
go的环境挺简单的吧?
C
Copy北京快三分布走势图 —主页-nWrit
go环境比java还简单好吧
喊你莫挨老子
喊你莫挨老子
golang的环境还不简单?无脑下一步。就好了。。。这都能难倒一堆人?那java岂不是难倒天下人?装golang就像装软件。这都不会那就不适合玩电脑
f
freezingsky
主要是我比较菜, 用VS搭建的时候, 各种被墙.
喊你莫挨老子
喊你莫挨老子
新手就别用vscode直接上goland。开箱即用。至于拉包更简单。现在国内有代理服务器。你只需要在环境变量上添加。在goland上勾选go mod 。一切需要的包他会帮你穿墙。比起vscode对新手太友好了
d
dwcz
Rust 语言服务器就是脱裤子放屁。都最备好了,就差个门脸。不去搞个门脸,去搞一堆解析文本来拖慢速度。
Ning1994
Ning1994
看来java和nodejs开发出来的ide很受欢迎
这波天秀
这波天秀
kotlin开发的北京快三分布走势图 —主页-K
z
zb1491449720374
vscode+rls❤
rz
rz
Rust 语法好难用好繁琐,我要哭了
久永
久永
@h4cd 虽然我到现在无论是 VS 还是 vsc 还没有一个配成功能编译的。。。
另,希望补充下 VS 现在对于 Rust 开发的支持程度。
rz
rz
按以下配置可以成功编译:

Current installation options:


default host triple: x86_64-pc-windows-msvc
default toolchain: stable
profile: default
modify PATH variable: yes

1) Proceed with installation (default)
2) Customize installation
3) Cancel installation
>2

I'm going to ask you the value of each of these installation options.
You may simply press the Enter key to leave unchanged.

Default host triple?
x86_64-pc-windows-gnu

Default toolchain? (stable/beta/nightly/none)
stable

Profile (which tools and data to install)? (minimal/default/complete)
default

Modify PATH variable? (y/n)
y
返回顶部
顶部