陈天老师小资料
正文开始
从一段代码开始
let name = "tyr".to_string();
// 启动一个新的线程引用当前线程的变量
// 这段代码隐含着线程不安全的访问。当前线程持有的变量 name 可能在新启动的线程使用之前就被释放,发生 use after free 错误
std::thread::spawn(move || {
println!("{}", name);
});
如何学习
难点在于 变量的所有权和生命周期,一旦掌握之后,其他知识点就是所有权和生命周期概念在不同领域的具体使用
精准学习+刻意练习
精准:理解底层逻辑,内在一致性
算法 + 数据结构 = 程序
好用链接
新鲜知识点
网络安全的嵌入式系统 Screen OS
Rust应用场合
第一性原理:回归事物最基础的条件,将其拆分成基本要素解构分析,来探索要解决的问题
《中庸》治学方法:博学之、审问之、慎思之、明辨之、笃行之
画图工具:excalidraw
使用 Trait 做接口设计、使用泛型做编译期多态、使用 Trait Object 做运行时多态
常用库推荐
对二进制数据的位进行操作:bit
对大容量数据进行操作:parquet
原子操作:atomics
channel
推荐书籍
- 《Rust编程之道》
- 2021年度最受欢迎语言
- 张汉东老师调研报告
- Rust 死灵书
- 《深入理解计算机系统》
精选问答
-
有哪些高质量的开源项目
- 入门:bytes
- 网络:tower系列,tokio系列
- 数据库可以看 github.com/joaoh82/rus…
- 标准库一定要读