Rust 基础信息:什么是 Rust? 0 个改进

针对初学者和专业人员的Rust编程语言文档,Rust从设计之初遍是为了更好的内存安全,现在已可作为生产力语言。

Rust是一门系统级编程语言,开始由Graydon Hoare开发. 后来Mozilla 实验室接管了此项目

应用级编程语言 v/s 系统级编程语言

像Java/C#的应用级编程语言被用来构建直接服务于用户的应用程序. 比如我们常用的Excel, World应用程序,网站和手机App。

像C/C++这类的属于系统级编程语言,常用来构建软件和软件平台,操作系统,游戏引擎, 编译器,等等 。通常会需要一些偏底层的操作,比如大量的和硬件交互。

系统级比应用级有两个主要的问题

  • 编写内存安全的代码很困难。
  • 编写多线程代码很困难。

Rust是什么?

  • Rust是一个系统级编程语言,被Mozilla员工 "Graydon Hoare"于2006年 开发。他形容Rust是一种线程安全的支持并发的实用型的编程语言,支持函数式编程与命令式编程。
  • rust的语法和C++类似。
  • Rust是免费开源的软件,即任何人可以免费的使用它,并且源代码是开源分享的,因此人们还可以去提高它的软件设计。
  • 在2016年,2017年和2018年的stack overflow开发人员调查中,Rust被评比为 “最受欢迎的编程语言” 之一。
  • 没有例如calloc(动态内存分配并做初始化)或者malloc(动态内存分配不做初始化)这样直接的内存管理模式。这意味着,内存会由Rust进行内部管理。

为什么选Rust?

Rust 关注三个目标

  • 安全
  • 快速
  • 并发

该语言旨在以简单的方式开发高度可靠且快速的软件系统。Rust 可被用于从高级程序到硬件特定程序的编写。

性能

Rust 编程语言没有设计垃圾回收器( GC )。这个设计提高了程序运行的性能(译者注:相对于其他设计有GC的编程语言,例如 Java 和 C# )。

编译时内存的安全性

使用 Rust 构建的软件可以避免出现诸如空指针,缓存溢出和内存泄漏的内存问题。

多线程应用

Rust 所有权和内存安全的特性为没有数据竞争的并发提供了支撑。

支持 Web Assembly (WASM)

Web Assembly 有助于,在浏览器,嵌入式设备或者其他任何地方,执行计算密集型算法。它的运行速度和本机代码一样飞快。 Rust 可以被编译成 Web Assembly ,以保证代码执行的快速和可靠。

Rust 带来了什么

因为许多理由,Rust 语言成为很多人的最佳选择。

让我们来看一看,都有哪些缘由:

  • 开发者团队: 事实证明,对于开发者团队, Rust 非常实用。低水平的编程代码会包含很多bug,需要测试人员进行覆盖测试广泛验证。然而,对于 Rust ,如果程序包含bug,编译器将拒绝编译代码。因为编译器的并行编译工作,开发者可以专注在程序的逻辑实现而不是bug。
  • 学术: 许多人可以学习如何使用 Rust 开发操作系统。 Rust 团队正在努力让普罗大众更容易理解系统概念,特别是对于编程新手。
  • 公司: 有大公司也有小公司使用 Rust 完成各种开发任务。这些任务包括命令行工具,Web服务,DevOps工具,嵌入式设备,音频和视频的分析和转码,加密货币,生物信息学,搜索引擎,物联网应用,机器学习,甚至是火狐浏览器的重要组成部分。
  • 开源开发者: Rust 是一种开源的编程语言,这意味着源代码可以供人们任意使用。因此,人们还可以利用开源的源代码参与进提升 Rust 设计的工作。
本文为 Wiki 文章,邀您参与纠错、纰漏和优化
讨论数量: 2

我也想翻译,可是能力有限 :sob:

4年前 评论

Rust 从设计之初"遍"是为了更好的内存安全—>"便"

2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!