没有合适的资源?快使用搜索试试~ 我知道了~
JavaScript + Rust_105实用知识库分享
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 97 浏览量
2023-11-01
22:23:40
上传
评论
收藏 2.73MB PDF 举报
温馨提示
试读
167页
资源JavaScript + Rust_105实用知识库分享知识分享
资源推荐
资源详情
资源评论
JavaScript + Rust_105
目录
JavaScript + Rust_105 1
第1篇 【译】24天从 Node 转 Rust :第1天 从 nvm 到 rustup 2
第2篇 【译】24天从 Node 转 Rust :第2天 从 npm 到 cargo 6
第3篇 【译】24天从 Node 转 Rust :第3天 配置 VS Code 11
第4篇 【译】24天从 Node 转 Rust :第4天 Hello World(和前两个“什么情况”) 18
第5篇 【译】24天从 Node 转 Rust :第5天 借用和所有权 22
第6篇 【译】24天从 Node 转 Rust 第6天: 字符串,第1部分 29
第7篇 【译】24天从 Node 转 Rust 第7天:语法与语言,第1部分 35
第8篇 【译】24天从 Node 转 Rust 第8天:语言,第2部分:从对象(objects), 类(classes) 到散列映射
(HashMaps) 和结构(structs) 40
第9篇 【译】24天从 Node 转 Rust 第9天:语言,第3部分:适用于 Rust 结构 (+枚举 !)的“类方法
” 48
第10篇 【译】24天从 Node 转 Rust 第10天:从混合(Mixins)到特质(Traits) 59
第11篇 【译】24天从 Node 转 Rust 第11天:模块系统 67
第12篇 【译】24天从 Node 转 Rust 第12天:字符串,第2部分 72
第13篇 【译】24天从 Node 转 Rust 第13天:揭秘结果(Result) 和选项(Option) 77
第14篇 【译】24天从 Node 转 Rust 第14天:管理错误 85
第15篇 【译】24天从 Node 转 Rust 第15天:闭包 95
第16篇 【译】24天从 Node 转 Rust 第16天:生命周期,引用,和 'static 102
第17篇 【译】24天从 Node 转 Rust 第17天:数组,循环和迭代器 108
第18篇 【译】24天从 Node 转 Rust 第18天:异步 121
第19篇 【译】24天从 Node 转 Rust 第19天:测试与项目结构 127
第20篇 【译】24天从 Node 转 Rust 第20天:命令行界面(CLI)参数和日志 134
第21篇 【译】24天从 Node 转 Rust 第21天:构建和运行 WebAssembly 141
第22篇 【译】24天从 Node 转 Rust 第22天:使用 JSON 151
第23篇 【译】24天从 Node 转 Rust 第23天:骗过借用检查器 157
第24篇 【译】24天从 Node 转 Rust 第24天:箱(Crates)和一些有价值的工具 164
【译】24天从 Node 转 Rust :第1天 从 nvm 到
rustup
原文:24 days from node.js to Rust
作者:Jarrod Overson
2021.12.1
介绍
从 Node.js 开发者的角度,给出的 Rust 语言学习指南。
欢迎来到我们的 24 篇系列文章的 Rust 指南!从今天(2021.12.1)到圣诞节 (2021.12.25)之
前,每天我都会写一篇关于 Rust 的文章,把一些熟悉的 node.js 的技术知识点,映射到对等
的 Rust 的知识点上。今天,我们先从安装 Rust 开始,使用类似于 的工具 。接nvm rustup
着,我们会学习 和设置 VS Code。 然后我们会浏览 Rust 语言的知识点,用 Rust 重写cargo
一些常见的 JavaScript 项目,再浏览一些流行的第三方依赖。
快速链接
→ 第1天:从 nvm 到 rustup
第2天:从 npm 到 cargo
第3天:设置 VS Code
第4天:Hello World (和最初两个“什么情况”)
第5天:借用和所有权
第6天:字符串,第1部分
第7天:语法和语言,第1部分
第8天:语言,第2部分:从对象(objects), 类(classes) 到散列映射(HashMaps) 和结构
(structs)
第9天:语言,第3部分:适用于 Rust 的结构 (+枚举 !)的“类方法”
第10天:从混合(Mixins) 到特质(Traits)
第11天:模块系统
第12天:字符串,第2部分
第13天:结果(Result) 和选项(Option)
第14天:管理错误
第15天:闭包
第16天:生命周期,引用,和 'static
第17天:数组,循环和迭代器
第18天:异步
第19天:开始一个大型项目
第20天:命令行界面(CLI)参数和日志
第21天:创建和运行 WebAssembly
第22天:使用 JSON
第23天:骗过借用检查器
第24天:箱(Crates)和工具
等下,为什么有人需要学 JavaScript 之外的语言?
我 JavaScript,自从我在 Netscape 第一次见到 JavaScript,我就开始写 JavaScript 代喜欢
码。我写的 JavaScript 代码比其他任何语言的都要多。我确实非常喜欢 JavaScript,也就是说
我知道它的短处。它速度很快,但是不够快。它很容易写,但是也很容易写烂。大项目用
JavaScript,很容易就变得笨重难以应付。TypeScript 可以帮助扩展 JavaScript 的项目,但是
第1篇 【译】24天从 Node 转 Rust :第1天 从 nvm 到 rustup
第 1 页 /共
165 页
它也有其自身的复杂度,也没有让代码跑的更快。服务端的 JavaScript 依赖于 node.js,如果
想要发布一些自成一体的代码(something self-contained),没什么好的办法。
当你已经开始超越了 JavaScript 最擅长的领域时,有另一种语言可以使用,是很有帮助的。
为什么是 Rust 语言?
你也可以使用 C, C++, C#, Go, Java, Kotlin, Haskell 或者其他一百种其他语言。Rust 是出
了名的难学,甚至对系统开发者也是如此。那为什么要用 Rust 呢? 可以这么来看:你已经会了
JavaScript 这样一门高级语言,它足以在任何地方运行任何东西;如果要学一门新语言,那么不
妨走极端,选一个毫不妥协的强势语言。
另外,WebAssembly。
Rust 对 WebAssembly 的工具和支持是最好的。可以用 Rust 来写 CPU 密集型的 JavaScript 逻
辑,然后编译成 WebAssembly 来运行。这样你就变成了超级英雄,用上 JavaScript 和 Rust,
没有什么你不能做的了。
免责声明
本指南不是一个全面的 Rust 教程,旨在引导有经验的 node.js 开发者学习 Rust。 我们会把常
见的 node.js 的工作流程、惯用的 JavaScript 和 TypeScript 语言特性, 映射到 Rust 的对
等事物上。本指南会尝试在技术准确性与可读性之间保持平衡,也在“理解重点”与“100%正
确”之间做出选择。那些被轻轻带过的技术点,我会加上一些链接,提供给想要深入学习的人。
可以在 Twitter 和 上向我提问,也可以加入我们的 。@jsoverson @vinodotdev Discord 频道
第1天: 使用 安装 Rustrustup
nvm (或 )是不可或缺的工具。它们可以在同一系统上安装不同版本的 node.js ,nvm-windows
并支持无缝切换。
Rust 世界里,其对等的是 .rustup
Rustup 可以管理 Rust 安装过程,以及额外的目标文件(如 WebAssembly),还有一些核心工具,
比如 (Rust 的 ) , clippy(Rust 的 ), (Rust 的 )。cargo npm eslint rustfmt perttier
安装过 rustup 之后,不带任何子命令(subcommands)直接运行,看看它提供了什么功能。
$ rustup
rustup 1.24.3 (ce5817a94 2021-05-31)
The Rust toolchain installer
USAGE:
rustup [FLAGS] [+toolchain] <SUBCOMMAND>
FLAGS:
-v, --verbose Enable verbose output
-q, --quiet Disable progress output
-h, --help Prints help information
-V, --version Prints version information
ARGS:
<+toolchain> release channel (e.g. +stable) or custom toolchain to set
override
第1篇 【译】24天从 Node 转 Rust :第1天 从 nvm 到 rustup
第 2 页 /共
165 页
SUBCOMMANDS:
show Show the active and installed toolchains or profiles
update Update Rust toolchains and rustup
check Check for updates to Rust toolchains and rustup
default Set the default toolchain
toolchain Modify or query the installed toolchains
target Modify a toolchain's supported targets
component Modify a toolchain's installed components
override Modify directory toolchain overrides
run Run a command with an environment configured for a given
toolchain
which Display which binary will be run for a given command
doc Open the documentation for the current toolchain
man View the man page for a given command
self Modify the rustup installation
set Alter rustup settings
completions Generate tab-completion scripts for your shell
help Prints this message or the help of the given subcommand(s)
DISCUSSION:
Rustup installs The Rust Programming Language from the official
release channels, enabling you to easily switch between stable,
beta, and nightly compilers and keep them updated. It makes
cross-compiling simpler with binary builds of the standard library
for common platforms.
If you are new to Rust consider running `rustup doc --book` to
learn Rust.
rustup show 可以查看当前安装内容。
rustup completions 可以帮助启用一些工具的 CLI 的语法自动补全,比如 和 。rustup cargo
rustup component 可以允许添加额外的组件。
rustup update 可以更新到最新版。
rustup install stable|nightly|1.57 可以安装一些特定的版本,或者是最新的稳定版/每夜版。
默认情况下,rustup 会安装最新的 和 ,然后应该立即就可以使用了。我们试一下:rust cargo
$ rustc --version
rustc 1.57.0 (59eed8a2a 2021-11-01)
$ cargo --version
cargo 1.56.0 (4ed5d137b 2021-10-04)
如果不行,那么可能需要重启 shell 来更新 PATH 路径。
rust-toolchain.toml
第1篇 【译】24天从 Node 转 Rust :第1天 从 nvm 到 rustup
第 3 页 /共
165 页
剩余166页未读,继续阅读
资源评论
北极象
- 粉丝: 1w+
- 资源: 345
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功