发布于 2026-01-06 0 阅读
0

博客文章:学习 Rust

博客文章:学习 Rust

我当时正在考虑是学习Go还是Rust ,最后决定先试试Rust。写这篇文章的时候,我的 Rust学习还在进行中,但我可以分享一下我找到的一些资源以及我学习Rust 的过程。

Rust 语言的文档非常丰富,各种资源琳琅满目,有时让人难以抉择。最主要的资源当然是Rust 编程语言网站,该网站也收录了《 Rust 编程语言手册》一书。撰写本文时,该书为 2018 版。虽然您在谷歌搜索时可能会找到旧版本的链接,但这些页面通常会尽可能地指向更新后的版本。

如果您已安装Rust ,则可以生成本地版本,以下命令将完成所有工作,包括在默认浏览器中打开该书:

$ rustup docs --book
Enter fullscreen mode Exit fullscreen mode

该网站还提供“ Rust by Example ”示例,其中包含许多有用的示例和务实的方法。

我决定先从 Manning 出品的付费视频课程“ Rust in Motion ”入手。这门课程由@Carol Nichols@Jake Goulding讲解。强烈推荐这门视频课程,它提供免费预览,方便你了解课程的形式和内容,示例源代码也可以在线获取

除了学习课程和使用上述资源外,我还使用Codewars.com。Codewars提供按难度分组的小型编程挑战,并以 Katas 的形式组织,类似于技术书籍章节末尾的小练习——总之,Katas 数量众多,作者各异,题型和挑战也十分丰富。

我目前做 Kata 的方法是每次只做一道。然后我会利用上面提到的资源来理解,以便用Rust写出一个可行的解决方案。我现在还在Rust 的第 8 道 kyo(最低级别),但我乐在其中。

之前我写了一篇关于搭建Rust开发环境的TIL/博客文章(dev.to)。所以当我查看 Kata(或其他编程作业)时,我的开发环境会给我带来很多反馈,这促使我广泛查阅Rust 标准文档以及我自己的已完成 Kata 和Rust示例代码库。无论你的作业来自哪里,这个过程都大同小异。

偶尔我会遇到一些挑战,比如耗时过长或需要额外思考/洗澡/睡觉,这时我会跳到另一个挑战,然后带着更智慧、更有经验的Rust 知识回来

Rust工具链的信息非常丰富,我听说很多人都对编译器生成的错误信息赞不绝口。这让我想到要列出Rust编译器错误

或者,您也可以直接使用编译器:

$ rustc --explain E0200
Enter fullscreen mode Exit fullscreen mode

还有其他资源,例如Codewars.com,非常欢迎大家提出建议。但是,如果您不太热衷于 Kata 之类的东西,也不想公开展示您的解决方案,我可以推荐@Carol Nichols 的Rustlings ”。

我以前从未见过像Rustlings这样的项目,它是一个 GitHub 项目,以构建的方式组织成一系列容易出错的代码片段。每次遇到需要编译的步骤时,程序都会跳转到相应的文本——感觉就像在玩游戏一样。不过,我可以提供一个小技巧,不会剧透。一定要仔细阅读显示的错误信息,因为每次遇到需要编译的步骤时,程序会自动跳转到下一个任务,有时你可能不会注意到编译成功,而应该继续执行新的代码片段。

如果你遇到一些更棘手的 Rust代码,@Jake Goulding制作了一个在线游乐场REPL)。

最后,我推荐使用 IRC 寻求Rust 方面的帮助,但可惜的是,它在未来某个时候将会关闭。此外,还有一些Rust用户组,我所在的本地用户组是哥本哈根 Rust 用户组。我还没有参加过他们的线下聚会,但我很想参加一次黑客马拉松,以提升我的Rust水平。

作为一点额外的福利,我可以向你介绍一个我刚刚重新发现的资源——一份我之前收藏但忘记使用的速查表——它看起来非常棒,希望能够好好利用它。

祝你Rust 之旅愉快!如果你有任何你认为对我的 Rust学习有帮助的资源推荐,请发送给我

祝你好运,注意安全(故意用了个关于Rust的双关语)……

转载自我的TIL 收藏集

资源

文章来源:https://dev.to/jonasbn/blog-post-46gm