Rust 所有权很难?这个开源工具帮你理解
2021-07-15 09:30:00 Author: mp.weixin.qq.com(查看原文) 阅读量:82 收藏

Rust 学习曲线高,其中所有权是最难的点,很多人跨不过去这个坎。

今天发现了一个开源工具:RustViz,这是一个从简单的 Rust 程序生成可视化的工具,可以帮助用户更好地理解 Rust Lifetime 和 Borrowing 机制。

项目地址:https://github.com/rustviz/rustviz,Star 数:1.4k+,点击文末「阅读原文」可以直达该项目。

RustViz 生成带有图形指示器的 SVG 文件,这些指示器与 mdbook[1] 集成,以便在 Rust 程序中呈现数据流的可视化。下面是一个视觉化后的例子:

怎么使用呢?

RustViz 能够通过用户定义可视化简单的 Rust 程序(有一定的限制)。这里将展示如何生成上面提供的示例的 SVG。

在开始之前,你需要安装好 Rust,Cargo 和 mdbook(Rust 安装好后,Cargo 默认会安装好,mdbook 需要单独安装)。然后下载 rustviz,进入 rustviz_mdbook 目录,执行如下命令:

$ ./view_examples.sh
Generating visualizations for the following examples:
building copy...
building hatra1...
building hatra2...
building func_take_ownership...
building func_take_return_ownership...
2021-07-07 22:36:13 [INFO] (mdbook::book): Book building has started
2021-07-07 22:36:13 [INFO] (mdbook::book): Running the html backend
Serving HTTP on :: port 8000 (http://[::]:8000/) ...

如果看到以上输出,那么已经成功地生成了 Rust 可视化示例!打开浏览器,访问 http://localhost:8000/。这个界面是可交互的,可以操作查看动画。

完整的指南,自己如何使用,RustViz 仓库主页有较详细的教程,有兴趣的可以跟着一步步学习、操作下,希望这个工具可以帮助你更好的学习 Rust 所有权知识。

参考资料

[1]

mdbook: https://github.com/rust-lang/mdBook


往期推荐

我是 polarisxu,北大硕士毕业,曾在 360 等知名互联网公司工作,10多年技术研发与架构经验!2012 年接触 Go 语言并创建了 Go 语言中文网!著有《Go语言编程之旅》、开源图书《Go语言标准库》等。

坚持输出技术(包括 Go、Rust 等技术)、职场心得和创业感悟!欢迎关注「polarisxu」一起成长!也欢迎加我微信好友交流:gopherstudio


文章来源: http://mp.weixin.qq.com/s?__biz=MzAxNzY0NDE3NA==&mid=2247487629&idx=2&sn=5f8a7398ab4caeccde5e60021e40cb27&chksm=9be33f6cac94b67ab3aa5f28cd599602296884e2aa1635ced994de30b42343fc02f63082e373#rd
如有侵权请联系:admin#unsafe.sh