动态

Rust语言特性及与Tokio维护者Alice Ryhl的讨论

Rust语言特性及与Tokio维护者Alice Ryhl的讨论
Gergely Orosz
Rust为什么与许多/大多数编程语言不同?Alice Ryhl在谷歌Android Rust团队工作,是Rust语言团队顾问,也是Tokio(Rust中最广泛使用的异步运行时)的核心维护者。时间戳:

00:00 介绍
04:09 Tokio:概述
05:11 Alice喜欢Rust的哪些方面
12:48 面向TypeScript工程师的Rust
13:51 从C++迁移到Rust
14:34 内存安全
18:12 垃圾回收的权衡
21:46 所有权、引用和借用
26:59 Rust中的不安全代码
31:21 Crates和Cargo
35:55 语言设计和RFC
43:02 构建新特性
46:30 版本(Editions)与版本号(Versions)
49:47 靠Rust赚钱
51:27 为Rust做贡献
53:03 Linux内核中的Rust
55:45 Rust的AI用例
1:01:35 学习Rust
1:03:54 书籍推荐

由以下赞助:

• @AntithesisHQ – 无需人工审查或传统集成测试即可验证系统正确性 – 避免错误或宕机。https://t.co/AKYm4cbVCU

• @sentry – 被数百万开发者认为“还不错”的应用监控软件 https://t.co/uoolyqTjhe

关于Rust应该了解的三件事:

1. Rust被设计成将隐式失败转化为编译错误。

在其他语言允许你忘记某些事情的地方,Rust将遗漏(如空检查、未初始化变量或使用'?'字符的错误传播)变成编译错误。如果你搞砸了,程序几乎肯定无法编译。即使能编译,至少你会看到lint警告。

2. 借助编译器,Rust中的重构安全且容易。

Alice:“我更改返回类型或结构体字段,然后修复编译器错误直到编译器不再报错。完成后,所有需要更新的地方都更新了。”Rust对正确性的关注使重构比动态类型语言和Java式类型语言更直接。

3. “版本(Editions)”允许Rust在不破坏任何人代码的情况下进行破坏性更改。

Rust版本(2015、2018、2021、2024)可以在crate之间自由混用。一个使用2021版本的库可以与一个使用2024版本的二进制无缝协作。这就是Rust如何演化语法(例如添加async/await作为关键字)而无需强制整个生态系统迁移的方式。

非常感谢Alice这次精彩的讨论!以及她对Rust的贡献。
动态Gergely Orosz2026-05-20原文

相关内容