`
吴凡鑫的个人主页
  • 浏览: 15469 次
文章分类
社区版块
存档分类
最新评论

2. Rust的三板斧 安全,迅速,并发

阅读更多

Rust不是一个拥有前沿科技的革命性语言,但是Rust合并了已经在老的语言中证明了自己的技术。当然它在c++的基础上大大的提升安全性。

Rust的开发者,设计Rust成为通用的有大量实例的语言。就像C++,他是结构化的面向对象语言。除了这一点,它从现有的语言中集合和继承了许多先进的技术。

在Rust中,输入变量是静态和强壮的因为Rust已经被编译好。 但是,不像java和C++,开发者不用强制去制定所有实物的类型,Rust的编译器在很多情况下可以推测类型。


C和C++中,有被人熟知的一系列问题会导致系统的崩溃,内存溢出。而且这些问题是很难被调试和解决的。
想象一下 dangling pointers,缓冲区溢出,空指针,segmentation错误,数据风暴等等都可以被避免是多么美好。

Rust的编译器又叫做RUSTC 是非常智能,而且在编译时可以识别处这些异常。从而在执行中保护内存的安全。 这些是编译器的工作,并且同时编译器保留内存布局的控制,这样就不需要在运行时,垃圾收集器带来的负担。

另外它的安全也意味着更少的安全隐患的可能性。

Rust类似Go和Julia语言一样的编译代码。但是,和Go和Julia相比,Rust不需要垃圾收集器。 在这个方面,这和java的JVM和其他运行在JVM上的语言比如Scala和Clojure也有很大不同。 其他的大部分语言比如 .NET,JavaScript,Python,Ruby,Dart和其他,都需要虚拟机和垃圾收集器。



作为Rust的其中一个并发机制,Rust采用Erlang中熟知的角色模型。 轻量级的进程叫做现成平台,所有现成平行运行。它们之间不分享堆内存,但是数据通过频道交流,数据风暴被Rust的type系统所屏蔽。
这些原函数使的开发者在未来计算机平台中平衡多核cpu。

这个rust编译器是自我编程的,说明它本身也是用Rust编写的并且是被它的前一个版本的自己编译的。它使用LLVM 编译框架作为它的后端(关于 LLVM http://en.wikipedia.org/wiki/LLVM) ,然后制作本地可执行的代码,这样它可以运行的非常的快,媲美C++ (一个关于速度的例子 http://benchmarksgame.alioth.debian.org/u64q/rust.php).

Rust设计时是作为可一直语言的比如C++,而且它运行在广大的在使用中的硬件和软件平台。 现如今,它可以运行在Linux,MacOS X,Windows,FreeBSD,Android和IOS。 它可以称作为C系列语言,就和C一样简单和高效,一样可以调用它自己的代码,而且相反,C语言也可以调用Rust的代码。
下面是Rust的Logo。

其他Rust的特性我们后面再详细讨论。如下:

Rust的变量初始化时是不变的。
枚举
模式匹配
泛型
高阶功能和回路
界面系统(叫做traits)
一个干净的宏系统
零消耗的抽象画,这表示Rust有高级语言的构造但是在表现上没有突破。

总结一下,Rust给了你 可以分配内存,可以消除许多安全和稳定性问题的力量!
关注我们: 
0
1
分享到:
评论

相关推荐

    Oxide.Rust 模组服插件

    《Oxide.Rust模组服插件详解与应用指南》 在当今的网络游戏世界中,Rust作为一款深受玩家喜爱的多人在线生存游戏,其丰富的可定制性和开放的服务器环境吸引了众多玩家和开发者。Oxide.Rust模组插件就是其中的重要一...

    编程锈2:epub.rust

    Rust是一种系统级编程语言,旨在提供内存安全、并发性和高性能,同时保持开发者的生产力。在本教程中,我们将深入探讨Rust的核心特性和最佳实践,帮助开发者掌握这一强大工具。 首先,我们要理解Rust的基本语法和...

    comment.block.documentation.rust

    comment.block.documentation.rust

    Data.Structures.and.Algorithms.with.Rust

    Data.Structures.and.Algorithms.with.Rust 讲解使用rust语言实现各个算法和数据结构,比较底层

    Packt.Hands-On.Microservices.with.Rust.1789342759.epub

    Packt.Hands-On.Microservices.with.Rust.1789342759.epub

    No.Starch.Press.The.Rust.Programming.Language.1718500440.epub

    The rust programming language, No.Starch.Press. rust语言权威指南, 最新版, 包含rust 2018.

    Rust常见面试题《PDF文档》

    2. Rust与C++相比有哪些优势和不同之处?请说明Rust语言相对于C++的优点。 3. Rust中的所有权(Ownership)系统是什么?请说明Rust中的所有权概念和作用。 4. Rust中的借用(Borrowing)是什么?请说明在Rust中的...

    Rust常见面试题(PDF文档)

    2. Rust与C++相比有哪些优势和不同之处?请说明Rust语言相对于C++的优点。 3. Rust中的所有权(Ownership)系统是什么?请说明Rust中的所有权概念和作用。 4. Rust中的借用(Borrowing)是什么?请说明在Rust中的...

    Rust程序设计语言 中文版(带完整目录)

    2. 并发性:Rust提供了一个基于actor模型的并发机制,允许开发者编写高效的并发程序。 3. 性能:Rust的编译器可以生成高效的机器代码,使得Rust程序可以与C++和其他低级语言媲美。 Rust的应用 1. 系统编程:Rust...

    Rust Essentials.pdf

    《Rust Essentials》一书由Ivo Balbaert撰写,这是一本关于Rust编程语言的入门级图书,目的是指导读者如何使用Rust编写快速、安全和并发的系统与应用程序。该书包含以下方面的详细知识点: 1. Rust语言的基本概念:...

    Packt.Network.Programming.with.Rust.1st.02.2018

    Rust网络编程,针对Rust本身提供的net库进行TCP,UDP,IP等编程。

    Rust语言学习万字指南!.md

    - 并发安全 - 函数、闭包、迭代器等语法特性 3. Rust属性的使用 4. Rust内存管理原理 5. Unicode在Rust中的应用 6. 字符串对象常用方法总结 是一份内容丰富、细节详尽的Rust入门学习资料,可作为自学Rust语言...

    rust博客系统源代码下载

    使用Rust编写的博客可以提供快速响应和高并发处理能力。 内存安全Rust的所有权和借用规则确保了内存安全性,防止了常见的内存错误,如空指针引用和数据竞争。这使得Rust博客系统更加可靠和稳定。 并发性:Rust具有...

    Rust 程序设计语言 简体中文版.pdf

    Rust 是一种系统编程语言,旨在提供安全、性能和并发性。下面是根据 Rust 程序设计语言简体中文版的内容生成的知识点: 1. 安装 Rust: Rust 可以通过 rustup 安装,rustup 是 Rust 的安装程序。安装 Rust 需要使用...

    Oxide.Rust插件

    Rust官方认可的第三方插件。他M的实在编不出来这么多字了!随便复制一段吧本站原创图文内容版属于原创作者,未经许可不得转载! © Copyright 2020-2020 RustBBS.net All rights reserved. RustBBS社区版权所有

    Rust借用机制:安全并发编程的基石

    ### Rust 借用机制详解:安全并发编程的基石 #### Rust 语言概览 Rust 是一种系统级编程语言,旨在提供高性能的同时确保内存安全。该语言由 Mozilla 研究院发起,并由 Graydon Hoare 设计,首次发布于 2010 年。...

    Exercism-exercises-in-Rust.-rust.zip

    Exercism_exercises_in_Rust._rust.zip Exercism_exercises_in_Rust._rust.zipv Exercism_exercises_in_Rust._rust.zip Exercism_exercises_in_Rust._rust.zip Exercism_exercises_in_Rust._rust.zip Exercism_...

    Rust学习笔记_78实用知识库分享

    2. Rust所有权和生命周期:Rust学习笔记Day 3-6详细讲述了Rust的所有权和生命周期概念,包括堆栈和堆的使用、变量的生命周期、所有权的规则和生命周期的约束规则等。 3. Rust trait系统:Rust学习笔记Day 7-12讲述...

    新手 学Rust 开发 一些简单例子

    Rust 是一种系统编程语言,以其安全性、并发性和性能而闻名。它旨在提供内存安全,同时保持与 C 和 C++ 类似的性能。以下是一些 Rust 开发的入门步骤和简单例子。 环境搭建 安装 Rust:访问 Rust 官方网站 ...

Global site tag (gtag.js) - Google Analytics