Rust 语言简介
概念:一门赋予每个人构建可靠且高效软件能力的语言。Rust 是一种系统编程语言。 它有着惊人的运行速度,能够防止段错误,并保证线程安全。
特性:
- 零开销抽象
- 转移语义
- 保证内存安全:Rust 丰富的类型系统和所有权模型保证了内存安全和线程安全,让您在编译期就能够消除各种各样的错误。
- 线程无数据竞争
- 基于 trait 的泛型
- 模式匹配
- 类型推断
- 极小运行时
- 高效 C 绑定
- 高性能:Rust 速度惊人且内存利用率极高。由于没有运行时和垃圾回收,它能够胜任对性能要求特别高的服务,可以在嵌入式设备上运行,还能轻松和其他语言集成。
如何理解:
- Rust是Mozilla开发的注重安全、性能和并发性的编程语言。"Rust",由web语言的领军人物Brendan Eich(js之父),Dave Herman以及Mozilla公司的Graydon Hoare 合力开发。
- Rust是针对多核体系提出的语言,并且吸收一些其他动态语言的重要特性,比如不需要管理内存,比如不会出现Null指针等等。
应用领域:
- 网络服务。Rust的可靠性和低占用空间使其非常适合网络服务和基础设施,特别是在大规模生产中。
- 命令行应用程序(CLI)。Rust的可移植性,可靠性,人体工程学以及生成静态二进制文件的能力共同为编写CLI应用程序带来了巨大的影响。
- WebAssembly。“ wasm” Web标准允许将类似本机的二进制文件运送到所有主要的浏览器,但GC支持仍需数年。Rust非常适合针对此领域,并为来自JS的程序员提供了一个合理的入口。
- 嵌入式设备。Rust有潜力使对资源有限的设备进行编程的工作效率更高且更有趣!我们希望嵌入式编程在今年达到一流的地位。
Rust 语言历史及由来
为什么要创建Rust 语言:创建这个新语言的目的是为了解决一个顽疾:软件的演进速度大大低于硬件的演进,软件在语言级别上无法真正利用多核计算带来的性能提升。Rust是针对多核体系提出的语言,并且吸收一些其他动态语言的重要特性,比如不需要管理内存,比如不会出现Null指针等等。
发展历史:
- Rust 语言在2006年作为 Mozilla 员工 Graydon Hoare 的私人项目出现,而 Mozilla 于 2009 年开始赞助这个项目。第一个有版本号的 Rust 编译器于 2012 年 1 月发布。Rust 1.0 是第一个稳定版本,于 2015 年 5 月 15 日发布。
- Mozilla在2014年10月宣布发布Rust编译器和工具的0.12版。0.12版有1900多项变化和bug修正,其中主要包括:重写了入门文档(现在叫Rust Guide);继续提高了包管理器Cargo等。
- 在2015年1月,发布了Rust-1.0.0-alpha版本。
- 2015年5月15日,Rust编程语言核心团队正式宣布发布Rust 1.0版本。
- 2015年6月25日,Rust发布了1.1版本。同时发布1.2测试版本
- 2016年11月14日,Rust发布了1.13版本,同时发布1.14测试版本。
- 2018年1月4日,Rust发布1.23版本
- 2018年9月25日,Rust发布1.29.1版本
- 未完待续...
Rust 语言版本更新说明
Rust 团队已经发布了 Rust 的新版本 1.43.1,该版本解决了 1.43.0 稳定版本中引入的两个回归,并更新了 Cargo 使用的 OpenSSL 版本。具体更新内容如下:
- 修复了 AVX-512 功能的稳定性
由于内部重构,Rust 1.43.0 阻止了无法在稳定版本上使用的功能(例如 AVX-512)的检测,Rust 1.43.1 修复了此回归问题。
- 修复了cargo package --list无法使用未发布的依赖项的问题
在具有路径依赖项或未发布版本的工作空间中,Rust 1.43.0 打破了对列出用 Cargo 发布的软件包中包含的文件的支持。Rust 1.43.1 中包含此问题的修复程序。有关错误的更多信息可参见 Cargo issue #8151。
- 将 openssl-src 更新为 1.1.1g
更多详情可查看发布说明:https://blog.rust-lang.org/2020/05/07/Rust.1.43.1.html
下载地址:https://www.rust-lang.org/tools/install