CSDN年仅 5 岁的 Rust 如何成为最受欢迎的编程语言?


当今世界科技发展日新月异 , Rust 1.0 版本发布至今已有五年时光!在这五年中 , Rust改变了许多 , 凭借自身的优势 , Rust 也连续四年成为开发者最受欢迎的编程语言 。 目前 , 也有越来越多的项目及企业开始选择使用 Rust作为其应用及工具开发语言 。
如今在Rust发行五周年之际 , Rust核心团队回顾了过去五年间 , Rust的发展历程 , 在其每个版本的更新迭代中 , 我们或许能明白 Rust 流行的真正原因 。
【CSDN年仅 5 岁的 Rust 如何成为最受欢迎的编程语言?】
CSDN年仅 5 岁的 Rust 如何成为最受欢迎的编程语言?
本文插图
作者 |Rust核心团队 译者 |弯月 , 责编 | 屠敏 头图 | CSDN 下载自东方 IC 出品 | CSDN(ID:CSDNnews) Rust是一个通用的编程语言 , 任何人都可以使用它构建可靠、高效的软件 。 Rust适用于技术栈的任何地方 , 不论是操作系统内核 , 还是Web应用程序 。 它完全是由一个开放、多样化的社区构建的, 多亏了志愿者们贡献出宝贵的个人时间和专业技能 , Rust才有了今天的发展 。
1.0版以来的主要变化
2015年
1.2 - 并行代码生成:Rust的每次发布 , 编译时间都会有很大提升 。 很难想象 , 曾经有一段时间 , Rust还没有提供并行代码生成功能 。
1.3 - Rustonomicon:《Rustonomicon》的第一版发行 。 这本书总结了一些不安全的Rust用法 。 这本书以及相关资源成为了人们学习以及理解Rust语言最难懂部分的最佳资源 。
1.4 - Windows MSVC Tier 1支持:第一个Tier 1平台提升 , 通过Microsoft Visual C++工具链(MSVC)带来了对64位Windows的原生支持 。 在1.4之前 , 你必须同时安装MinGW(一个第三方的GNU环境)才能编译并使用Rust程序 。 Rust的Windows支持是过去五年的一项巨大进步 。 最近 , 微软公布了他们的WinRT API准备正式支持Rust!现在 , 构建跨平台的高质量原生代码已经非常容易了 。
1.5 - Cargo Install:在cargo已有的插件支持之外 , 能够构建Rust二进制文件 , 这个功能打造了一个完整的生态系统 , 里面包含了大量社区喜爱并且每天都使用的应用程序、工具和开发工具等 。 cargo的许多命令最初都是社区构建并在crates.io上分享的插件!
2016年
1.6 - Libcore:libcore是标准库的一个子集 , 它仅包括那些不需要内存分配或操作系统级别功能的API 。 libcore非常稳定 , 因此Rust的编译不需要再耗费大量资源或依赖于操作系统 , 这是Rust朝着嵌入式系统开发迈进的一大步 。
1.10 - C ABI动态库:cdylib类型允许Rust编译成C动态库 , 这样人们就可以将Rust项目嵌入到任何支持C ABI的系统中 。 已有一些成功的Rust案例 , 如用Rust编写系统中关键的一小部分 , 然后无缝集成到整体代码中 , 这种实现已经非常容易 。
1.12 - Cargo工作空间:现在工作空间可以组织多个Rust项目 , 并共享同一个lockfile 。 在构建大型、多crate的项目时 , 工作空间是无价之宝 。
1.13 - Try运算符:增加的第一个语法就是 ?, 或者叫做“try”运算符 。 该运算符可以很容易地将错误从调用栈中向上传递 。 之前必须使用try!宏 , 需要在每次遇到结果时将整个表达式都包裹起来 。 而现在可以方便地使用 ? 来串联方法 。
try!(try!(expression).method); // Oldexpression?.method?; // New1.14 - Rustup 1.0:Rustup是Rust的工具链管理器 , 可以让你无缝地使用任何Rust版本 , 或者使用它的任何工具 。 最初这个工具只是一个shell脚本 , 后来被维护者称为“奇美拉” 。 能够在五年期就提供 一个跨Linux、macOS、Windows和各种目标平台上的编译器 , 真是一个奇迹 。
2017年
1.15 - 继承过程式宏(Derive Procedural Macros):继承过程式宏可以建立强大且可扩展的有类型的API , 而无需编写样板代码 。 这个版本的Rust首次能够使用serde、diesel等库的宏 。


推荐阅读