本周Rust精彩链接Farm等

几天前,Rust v1.79.0 发布了,它所包含的好东西比黑客大会的大礼包还多。当我们还在忙其他事情的时候,我们想等一切尘埃落定后再对它进行报道。

因此,我们翻阅了它,下面是我们发现的一些让我们捧腹大笑的好东西。首先,我们对一些 API 的稳定化很感兴趣,包括新的 Inline const 表达式(我们在第 20 期早些时候写过相关文章)。

闲话少说,以下是 Rust v1.79.0 中最有趣的五大亮点

1、内联常量表达式。
该功能允许开发人员直接在代码中声明常量,减少了单独声明常量的需要。这可以使代码更简洁、更易读。

还记得那些写起来费时费力的const声明吗?

  • Rust 1.79 通过内联 const 表达式将它们抛到了九霄云外。

现在,你可以写出简洁明了、读起来如梦如幻的代码。这就像在你的程序上撒了一层仙粉!

2、更严格的类型限制:
有了 Rust 1.79,开发人员可以指定更精确的类型约束,从而提高代码的类型安全性,并在编译时更容易捕捉潜在的类型错配。

将类型边界视为代码夜总会的保镖。

  • Rust 1.79 让你可以更明确地规定谁可以进入(或允许哪些数据类型),从而使你的代码更加安全、更具表现力。

想象一下,一个没有类型错配的世界--开发者的乌托邦!

3、自动延长生命周期:
借用检查器中的这一新功能可自动延长临时数据的生命周期,有助于减少常见的生命周期相关错误。它使借用检查程序更加宽容,让开发人员能够专注于代码中更重要的方面。

有没有遇到过那些让人头皮发麻的终生(长生命周期)错误?

  • Rust 1.79 为你提供了自动生命周期扩展功能。

借用检查器现在对临时数据更加宽容,让你可以专注于编写出色的代码,而不是与编译器错误搏斗。

4、标准库剖析提升:
在标准库中默认启用帧指针可显著提高 Rust 程序的性能剖析能力。这能让开发人员更深入地了解代码的执行情况,对优化工作非常有价值。

想了解代码的实际运行情况吗?

  • Rust 1.79 在标准库中默认启用了帧指针,使程序剖析变得前所未有的简单。

这就像一个内置的性能监控器,毕竟知识就是力量!

5、稳定 API 大杂烩:
该更新包含多种已稳定的新应用程序接口,扩展了 Rust 开发人员可用来处理不同数据类型和结构的工具集。

本次更新带来了一整套新的稳定 API。从处理整数和字符串到切片等,您将拥有更广泛的工具来应对任何编程挑战。您可以将其视为 Rust 开发人员的类固醇工具箱!


本周精彩链接

  1. Rust stdlib 的排序实现速度非常快,祝贺 Voultapher 和 orlp 所做的所有研究和实现。
  2. Godot-rust 团队在 crates.io 上发布了godot-rust,并附带 godot crate。向 godot-rust 团队致以崇高的敬意。
  3. 厌倦了在堆积如山的文档中寻找?to_tgo 的Rust SpeedSheet是一份可放入口袋或至少可放在浏览器窗口中的 Rust 备忘单。
  4. Saoirse(又名 Without Boats)写了一篇关于所有权的文章,它就是保持事物井然有序,但不是那种停靠在码头的那种。我们正在讨论子结构类型理论,朋友们!
  5. Adrian Taylor 撰写了关于Pin 上的想法
  6. Let's Encrypt 刚刚启动了他们的内存改造!他们部署了ntpd-rs ,这是 Project Prossimo(于 2020 年孵化)的第一个毕业生,旨在寻求更安全的系统。
  7. Ratatouille Ratatui (v0.27.0)的最新更新已发布,它带来了一些美味的新功能。
  8. Jake Purton 编写的这本AES 加密指南是密码学的罗塞塔石碑……适合初学者。说真的,它就是那么好。
  9. Jeremy Chone 发布了我的 Rust 错误处理最佳实践
  10. Yoshua Wuyts 撰文:现场施工似乎出奇的简单?

Farm项目
Farm 是一款极速的兼容 vite 的 Web 构建工具,使用 Rust 编写。它以快速、强大和一致为设计理念,旨在为 Web 开发提供最佳体验,是真正的下一代构建工具。

为什么要Farm ?

  • Farm 可在几毫秒内启动 React/Vue 项目,并在一眨眼间更新(想想 20 毫秒!)。忘记等待构建完成的咖啡休息时间吧。
  • Farm 仅重新编译更改的内容,从而节省您宝贵的时间和资源。
  • 使用 Farm 和 Vite 插件增强您的工作流程。️
  • 处理所有基本内容 - JS/TS/JSX/TSX、CSS、模块和静态资产。此外,还有 React、Vue、SolidJs、Sass、Less 等官方插件!
  • 懒惰的天才。只在需要时编译所需的内容,使这些包保持良好和精简。
  • 开发和谐。您在开发中看到的内容就是您在生产中部署的内容。一致性是关键!
  • 传承之爱。支持现代和传统浏览器,不让任何人掉队。

Farm 是完全开源的

不同声音:
Rust的主要问题是它达到了局部最大值。

  • 它解决了一个真实的问题,比如C++中的内存管理,这是一个崇高的成就。
  • 但是这种语言仍然没有足够的表现力,特别是如果您熟悉更高级别的声明性语言。