关于 Rust 的不仅仅是性能的伟大之处

主要观点:作者写代码常选 Rust 是因其编程愉悦,Rust 有诸多优点,如表达性强的类型安全、不易崩溃、抗数据竞争、可灵活控制、兼具函数式和命令式编程风格、有帮助的编译器错误等。
关键信息:

  • Rust 类型系统兼具类型安全和表达性,如在表达想法方面比 Go 更易,且编译器能确保类型使用正确,但类型系统有时会导致代码启动运行时间变长、泛型代码难读。
  • Go 存在“十亿美金错误”即空指针,可能导致程序崩溃,而 Rust 尽量避免崩溃,需用unsafe处理可空值,可配置clippy拒绝使用unwrap的代码。
  • Rust 的借用检查器能有效防止数据竞争,使并发代码编写更难出错。
  • Rust 能让程序员比其他语言更了解 CPU 和内存操作,有更多控制,预测性好。
  • Rust 可支持函数式和命令式编程风格,且两种范式可相互转换,效率损失小。
  • Rust 的编译器错误消息通常能准确指出错误并提供修复建议。
  • 作者认为 Rust 有趣,虽有学习痛苦期但总体很棒,性能和安全是其优点之一,即使不需要顶级性能也值得考虑。
    重要细节:
  • 作者曾受 C++编译器错误之苦,对比之下更觉 Rust 编译器错误有用。
  • 作者因工作引入 Go 语言,若工作中使用不够会在业余时间使用,虽认为 Go 有用但不是最喜欢的类型系统。
  • Go 中的空指针用nil表示,是零值等价于其他语言的null
  • 若对成为更有效的软件工程师感兴趣,可考虑作者的教练服务。
阅读 8
0 条评论