Mozilla  是一家已开发工具和驱动,基于web开发标准来让人熟知的。 最著名的是他们的旗舰产品火狐游览器(FireFox)。


一个有趣的事实,在今天的互联网世界中,所有的游览器(包括Firefox)都是用C++来编写的,Firefox用了12,900,992代码,chrome用了4,490,488行。这样使的我们的程序可以很快,但是在根本上不安全,因为C和C++在操作内存时没有进行有效的检查。


如果工程师没有遵循最严格安全的代码规范来编写代码,程序则很有可能会崩溃,内存溢出,缓冲区溢出还有一些空指针指向程序的异常处。 这些将很有可能造成严重的安全漏洞。


Rust的设计初衷就是来避免这些问题的发生。


再说一些安全的编程语言,比如Haskell。 Haskell是非常安全可靠的语言,但是它只能很有限的操作内存分配和系统资源。


在控制性性和安全性上,好像越安全的语言则失去了一些控制等级,相反过来也是。 来看一下下图,各个语言控制性和安全性的关系。


092006kplsyqqufe7hzl9i.jpg


Rust(http://www.rust-lang.org/) 是被创造出来克服这些困境的:


. 提高强大类型系统的安全性

. 深度但是安全的操作低等级的资源,使的运行接近硬件。



Rust让你能准确制定你的资源将怎么被部署到内存和你的内存将要怎么管理他们。 这就是它为什么在安全性和操作性上都表现的很好的原因。


这是Rust 最最独特的卖点。

Rust打破了在Rust之前其他编程语言所有的安全操作的两极化瓶颈问题。


使用Rust,操作和安全可以在不损失程序功能的前提下同时被满足。

和现有现有的流行语言,比如Java,C# Python,Ruby,Go相反, Rust实在没有垃圾收集器的前提下同时满足了这两个需求。


事实上,Rust还没有垃圾收集器(尽管有已经在计划之中)。Rust 是预编译语言,编译器强行执行严格的安全规则检查,所以它不会造成运行时的消耗。


结果是,Rust可以在很小的运行时间,所以结果时Rust可以在很小的运行时间甚至没有运行时间的情况下执行。 比较适合实时的和嵌入式的项目,它可以很轻松的和其他项目和语言整合。


Rust对开发人员和项目的意义是不仅仅表现和低等级的优化是重要的,安全稳定的执行环境也是非常重要的。



关注我们Rust论坛,一起进行Rust学习 092319ly34tt2q6yw0itb4.jpg