澳门新葡亰平台官网Rust 在 2017 年的发展主题:提高生产力

by admin on 2020年4月22日

Rust核心团队已经确定了Rust的路线图提案,旨在确定语言在一年内的位置。部分基于2016年Rust用户进行的调查结果,它优先改善Rust的生产力,而不牺牲速度和可靠性。

Rust 在 2017
年的发展都围绕提高生产力这个主题。从工具到库到文档到核心语言,我们都希望使
Rust
让任务更容易完成。2017年的路线图就是围绕这个意愿开展的,该文章列出了指导
Rust 团队想要达到的8个目标。

通过编写书籍,课程提升和改进语言,降低了语言的学习曲线。它还通过在检查工作流程中添加和利用增量重新编译来提高编辑

具体来说,2016年的调查显示了Rust使用的一些障碍,例如它的学习曲线,缺乏库和IDE,对语言“成熟度”和编译器性能的关注。拟议的2017年路线图通过提供详细的改进方法来解决所有这些问题。

1.通过编写书籍,课程提升和改进语言,降低了语言的学习曲线。书籍 The Rust
Programming Language 计划于 2018 年 5 月发行。书籍 Programming Rust
计划于也在 2017 年 12 月 21日发行。并计划在 2018
年初进行教师培训课程,重点关注那些没有代表性的人。对语言的所有权,模块系统和性状系统也做了许多改变。

  • 编译 – 调试循环的速度。

学习曲线

Rust的学习曲线在2016年调查的4个受访者中被提及,它部分与Rust的还没有主流内存管理模型,基于所有权的概念有关。
Rust团队将尝试制定的策略包括改进文档,语言诊断和功能以及工具。

2.它还通过在检查工作流程中添加和利用增量重新编译来提高编辑 – 编译 –
调试循环的速度。Cargo 现在提供了一个check子命令,可以用来加快编辑 –
编译周期。将在 1 月份发行的编译器测试版本中逐步推广编译,并在 2 月份发行
Rust 1.24。您可以看到下面的一些关键基准在实践中如何进行增量重新编译。

澳门新葡亰平台官网 1

澳门新葡亰平台官网 ,工具链

在工具方面,Rust团队希望改进编码-编译-调试 周期并提供一个IDE。已经做了一些工作来改进编辑

  • 编译 –
    调试周期,即通过引入中级IR(MIR)来减少Rust的表面,并且为类型检查和翻译以及增量编译提供更简单的表示最近已达到alpha状态。此外,Rust团队将尝试在当前调试版本(即“运行太慢”)和发布版本(“构建太慢”)之间取得更好的平衡。

澳门新葡亰平台官网 2

其他目标包括拥有可靠的,基本的 IDE
经验,易于集成到大型构建系统,易于访问高质量的集装箱,能够编写健壮的服务器,拥有用于基本任务的
1.0 级集装箱和提供各种指导的社区。

Rust的生态系统

Rust的库的生态系统的成熟度是提高生产力的另一个重点。这有两方面:一方面,提供发现高质量的creates的方法,包括信号质量指标的徽章,更好地支持持续集成,在选定的creates上执行API审查等。另一方面,Rust的生态系统应该增长,努力为基本任务提供1.0级别的creates,特别关注用于服务器端,并发/异步/并行开发的creates。

3.提供了一个拥有可靠的,基本的 IDE 经验。Rust 现在在 IntelliJ 和 Rust
语言服务器(RLS)中都有坚实的 IDE 支持。

Rust 团队表示:将在不久的将来推出 2018 年的路线规划图。

互操作性

在生产中使用Rust通常需要将其集成到现有的构建系统中并与C
++代码进行互操作。在这两个帐户上,Rust团队旨在使Rust与现有组织的集成变得容易。特别是,在Rust中使用C
++库不应该比在C ++中使用它困难得多。

这只是2017年Rust路线图的总结。有关Rust路线图的详细视图,包括对缺点和替代方案的讨论,以及未解决的问题,请参阅RFC。

翻译:MtrS

4.易于集成到大型构建系统。备选登记处集装箱现在不能稳定从crates.io以外的注册管理机构安装包装箱。将货物作为组件。在利益相关方的约束之下,2017
的许多工作都集中在想要将 Rust
包装箱整合到一个大型现有构建系统(如Bazel)中。

来自:

5.易于访问高质量的集装箱。

Crates.io 今年增加了一些类别,旨在提供一个箱式组织结构。

RFC讨论,其中有对人们如何评估箱子的调查。

在过去的90天内下载数量激增,在评估时也向人们提供了更多信息。

原创者会在 crates.io 上显示的一些附加信息包括 CI
状态,维护状态,代码覆盖率,GitHub 统计的徽章。

最重要的是,crates.io 的页面上有一个的 README 文件!

6.能够编写健壮的服务器

Futures and Tokio

Futures于 2016 年底推出,而 Tokio
项目于2017年初发布了0.1。在今年晚些时候,Tokio团队提出了一个重要的 API
改进,以简化和澄清板条的API,并且正在开展编写
Rust 异步编程的书的计划。

异步生态系统

包括对 curl,openssl,inotify,unix信号,cap’n
proto,sendfile,postgres,couchbase 等的支持,Tokio
的生态系统有了巨大的增长。此外,Rust
还为HTTP1和HTTP2提供了异步服务器库。

Generators

Rust 在 2017 年发现了支持实验发电机(experimental generator
support)的领域!这种支持提供了必要的async/await符号。预计这一领域的进一步工作将在
2018 年初获得高度重视。

Web框架

最后,Rocket(sync)和Gotham(异步)等复杂的 Web
框架今年继续发展,并提供了一种强大而有效的编程风格。

7.拥有用于基本任务的 1.0 级集装箱。Rust 团队今年推出了Libz
Blitz,这是一个重大的改进。Libz Blit
审查和改进了大量的基础箱子,并发布了 1.0 版本。Libz Blitz
有一个很好的API指南,它整合了标准库和 Libz Blitz 团队所提供的官方库 API
指南。

8.提供各种社区指导。先后在各个城市举办了 5 次 RustBridge
研讨会。越来越多有不同经历或者不同技能的人加入 Rust 社区,还推出了第一个
Rustimpl
Period。来帮助更多学习
Rust 的人。

Rust 团队表示:将在不久的将来推出 2018 年的路线规划图。

来自:https://blog.rust-lang.org/2017/12/21/rust-in-2017.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图