Rust语言
Rust语言
https://doc.rust-lang.org/stable/book/
http://www.phperz.com/article/15/0717/141560.html
Rust是一款全新的系统编程语言,专注于安全性和性能,致力于打造更高效、更可靠的系统。同时,Rust也是Mozilla新一代浏览器引擎Servo的编写语言,希望能在确保安全性的同时提升在移动设备上的性能和表现。
on command installation:
$ sudo curl -sf -L https://static.rust-lang.org/rustup.sh | sh
2006 年,编程语言工程师 Graydon Hoare 利用业余时间启动了 Rust 语言项目,由JavaScript之父Brendan Eich,Dave Herman以及Mozilla公司的Graydon Hoare合力开发。该项目充分借鉴了C/C++/Java/Python 等语言的经验,试图在保持良好性能的同时,克服以往编程语言所存在的问题。其最大的特点在于保持较高的运行效率、深入的底层控制和广泛应用范围的同时,解决了传统C语言和 C++ 语言中的内存安全问题。2009 年,Mozilla 接手 Rust 项目,创建了以 Graydon 为首的专业全职开发团队,并且开放了该项目的源代码。2012 年 1 月,第一个面向公众的预览版本——v0.1 发布。经历了大刀阔斧的 10 年发展,Rust 在 2015 年 5 月份正式发布 1.0 版本。之后,Rust 开始遵守 SemVer 2.0 规范,进入稳步发展的阶段。
目前,Rust 以其无虚拟机、无垃圾收集器、无运行时、无空指针/野指针/内存越界/缓冲区溢出/段错误、无数据竞争等特点已经吸引了广大开发人员的广泛关注。但是,作为一门新兴的语言,Rust 仍然有很多地方需要完善。据 Rust 核心开发团队透露,Rust 在 2016 年的发展主要包括加大在框架上的投入、完善关键特性和扩展应用领域等三个方向。
特点:
1. 代数数据类型
2.模式匹配
3.闭包
4.类型推断
5.零损耗抽象
6.保证内存安全
7.可选的垃圾回收
8.无数据竞争的并发
9.最小的运行时间
10.有效率的C绑定
Rust是现代系统编程语言侧重于安全性和速度。它通过不使用垃圾收集实现了内存安全。Rust是针对多核体系提出的语言,并且吸收一些其他动态语言的重要特性,比如不需要管理内存,比如不会出现Null指针等。
Rust是一门特点鲜明、设计精巧的语言,而绝非普通的“又一门编程语言”。在语法层面,它包含了模 式匹配、闭包、泛型等流行功能,作为系统编程语言,使用的舒适度不亚于脚本语言。另外还可以通过FFI(Foreign Function Interface)调用已有的C语言库,满足了实用性的需要。
Rust官方网站:http://www.rust-lang.org/
未来c/c++程序员将会更多转向rust上来。rust与golang比较,个人感觉: rust >> golang。也许根本不是一个量级的东西,我更看好rust。
Rust语言的更多相关文章
- Rust语言:安全地并发
http://www.csdn.net/article/2014-02-26/2818556-Rust http://www.zhihu.com/question/20032903 Rust是近两年M ...
- Rust语言之HelloWorld Web版
Rust语言之HelloWorld Web版 下面这篇文章值得仔细研读: http://arthurtw.github.io/2014/12/21/rust-anti-sloppy-programmi ...
- Rust语言之HelloWorld
Rust语言之HelloWorld 参考文档: http://doc.crates.io/guide.html 1 什么是Cargo 相当于maven/ant之于java, automake之于c, ...
- 【转】对 Rust 语言的分析
对 Rust 语言的分析 Rust 是一门最近比较热的语言,有很多人问过我对 Rust 的看法.由于我本人是一个语言专家,实现过几乎所有的语言特性,所以我不认为任何一种语言是新的.任何“新语言”对我来 ...
- 半个月使用rust语言的体验
从第一次下载rust语言的编译器到今天刚好第14天. 简单说一下对这个语言的感觉吧. 一.性能 把以前用java写的一个中文地址切分的算法,用rust重新实现了一下(https://github.co ...
- Atitit.rust语言特性 attilax 总结
Atitit.rust语言特性 attilax 总结 1. 创建这个新语言的目的是为了解决一个顽疾:软件的演进速度大大低于硬件的演进,软件在语言级别上无法真正利用多核计算带来的性能提升.1 2. 不会 ...
- Rust语言——无虚拟机、无垃圾收集器、无运行时、无空指针/野指针/内存越界/缓冲区溢出/段错误、无数据竞争
2006年,编程语言工程师Graydon Hoare利用业余时间启动了Rust语言项目.该项目充分借鉴了C/C++/Java/Python等语言的经验,试图在保持良好性能的同时,克服以往编程语言所存在 ...
- 5分钟APIG实战: 使用Rust语言快速构建API能力开放
序言:Rust语言简介 参与过C/C++大型项目的同学可能都经历过因为Null Pointer.Memory Leak等问题“被” 加班了不知道多少个晚上.别沮丧,你不是一个人,Mozilla Fir ...
- 我持续推动Rust语言支持Windows XP系统
前言 Rust好像长期以来不支持Windows XP系统.有不少用户发帖提议官方支持XP,基本上都被Rust官方开发人员明白的拒绝了.他们的对话大致上是以这种形式開始和结束的(当中乙方代表官方及其拥趸 ...
随机推荐
- ACM Find them, Catch them
The police office in Tadu City decides to say ends to the chaos, as launch actions to root up the TW ...
- MongoDB Java
MongoDB Java 环境配置 在Java程序中如果要使用MongoDB,你需要确保已经安装了Java环境及MongoDB JDBC 驱动. 你可以参考本站的Java教程来安装Java程序.现在让 ...
- 这交互炸了(四) :一分钟让你拥有微信拖拽透明返回PhotoView
本文已授权微信公众号:鸿洋(hongyangAndroid)原创首发 <交互炸了>或许是一系列高端特效教程, 文中会介绍一些比较炫酷的特效,以及实现的思路.特效实现本身也许不会有太大的难度 ...
- [Gradle系列]Gradle打包apk多版本,多渠道,多环境,多功能,多模块随心所欲
Tamic: http://blog.csdn.net/sk719887916/article/details/53411771 开始 上篇Gradle发布Module(Maven)到jcenter, ...
- 数据库的case when 使用实例
本文作者:苏生米沿 本文地址:http://blog.csdn.net/sushengmiyan/article/details/50471210 需求很简单,我有一个部门和部门的请假申请表.表数据简 ...
- Android Multimedia框架总结(十八)Camera2框架从Java层到C++层类关系
Agenda: getSystemService(Context.CAMERA_SERVICE) CameraManager.getCameraIdList() ICameraService.aidl ...
- DoesNotExist at /admin/
DoesNotExist at /admin/ User has no account. Request Method: GET Request URL: http://127.0.0.1:8000/ ...
- Spring之MVC模块
Spring MVC的Controller用于处理用户的请求.Controller相当于Struts 1里的Action,他们的实现机制.运行原理都类似 Controller是个接口,一般直接继承Ab ...
- Swift快速给Cocoa库内置类添加便捷初始化器
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) Cocoa中的NSShadow类默认没有我们需要的实例方法,为 ...
- 01_数据库连接池,数据源,ResultSetMetaData,jdbc优化
一.数据库连接池 1. 什么是连接池 传统的开发模式下,Servlet处理用户的请求,找Dao查询数据,dao会创建与数据库之间的连接,完成数据查询后会关闭数据库的链接. 这样的方式会导致用户每 ...