你编写的JavaScript比任何其他语言都多。并且很喜欢它,随着你对Javascript/Node.JS的熟悉,你应该知道Javascript/Node.JS并适合密集计算型的应用。
Javascript/Node.JS有着不错的运行速度很快,但对于重计算的任务时它并没有那么快。Javascript/Node.JS写起来很容易,但很容易搞砸。大型项目很快就会变得笨拙。
TypeScript有助于扩展JavaScript,但它增加了自身的复杂性,并且仍然没有使它变得更快。服务器端JavaScript也依赖于node.js。如果您想分发独立的东西,且要非常小,很难找到合适的方案。
这时当您开始扩展JavaScript最擅长的领域时,转向另一种语言会很有帮助。可帮助克服Javascript本身问题。
为什么选择Rust
您可以使用C、C++、C#、Go、Java、Kotlin、Haskell或其他一百种语言。众所周知,即使是系统程序员也很难接触到Rust。
您已经拥有JavaScript,这是一种高级语言,足以在任何地方运行几乎所有东西。如果你正在学习一门新语言,你不妨走个极端,选择一个不妥协的方式。
此外,Rust对WebAssembly的工具和支持比其他语言都要好。您可以将CPU繁重的 JavaScript逻辑重写为Rust并将其作为WebAssembly运行。
这基本上使您成为Javascript中的佼佼者。使用JavaScript和Rust,没有什么是您无法处理的,在计算密集型应用中使用Rust扩展Javascript,对于IO密集型直接使用Javascript即可。
使用rust安装rustup
nvm是不可或缺的工具,nvm管理在同一系统上的node.js版本。让你在版本之间的无缝安装和切换。
在Rust也有类似的工具,它就是rustup。Rustup管理您的Rust安装以及附加的目标平台,如 WebAssembly。还有核心工具,如cargo
是Rust的npm
。clippy
是Rust的eslint
,rustfmt
是Rust的 prettier
。
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh #安装rust/rustup
输出如下
/home/myfreax/.rustup
1) Proceed with installation (default)
2) Customize installation
3) Cancel installation
安装过程中将询问你rust安装位置,选择1默认的位置。除非你对rust很熟悉,我们不建议更改rust的安装位置。避免不必要的问题。
安装后rust
,你可在没有任何子命令的情况下运行rustup,并探索它所提供的功能。以下是常用的rustup子命令说明。
rustup show
将显示当前安装的内容。rustup completions
将帮助您为rustup
和cargo
等工具安装自动命令的自动补全/自动完成。
rustup component
允许您添加其他组件。rustup update
会将您更新rust到最新版本。rustup install stable|nightly|1.57
将安装特定版本或最新的稳定/夜间版本。
默认情况下,rustup将安装最新版本的rust
和cargo
。安装完成后你可以运行以下命令验证rust的版本。
$ rustc --version
rustc 1.61.0 (fe5b13d68 2022-05-18)
$ cargo --version
rustc 1.61.0 (fe5b13d68 2022-05-18)
如果它不起作用,您可能需要重新启动当前的shell会话以更新您的PATH环境变量。
rust-toolchain.toml
用rustup指定你的工具链很简单。随着您的深入,您可能会遇到不同项目需要不同工具链或Rust版本的配置。
这就是rust-toolchain.toml
发挥作用的地方。cargo
在此处指定项目所需的工具链、目标平台和支持的工具,以便rustup
可以自动工作。
[toolchain]
channel = "1.56.0"
components = [ "rustfmt", "clippy" ]
结论
至此,你已经完成了rust的安装,了解rust的编译器rustc,rust的工具链配置文件。rust的格式化工具rustfmt
,rustup是rust版本管理工具。无缝切换rust版本。clippy
是rust代码质量检查工具。