Rust教程初识

简介: 当然,它们都有编译然后执行可执行程序的用法。应当有编译后改名的方式,不然那也太不coooooooooooool了。

Rust 教程

4976fbef97c15ff7ec5e578be987b5d8_fad0882d79e0f39d614f4194615b00ac.png


Rust 语言是一种高效、可靠的通用高级语言。其高效不仅限于开发效率,它的执行效率也是令人称赞的,是一种少有的兼顾开发效率和执行效率的语言。


Rust 语言由 Mozilla 开发,最早发布于 2014 年 9 月。Rust 的编译器是在 MIT License 和 Apache License 2.0 双重协议声明下的免费开源软件。截至目前( 2020 年 1 月)最新的编译器版本是 1.41.0。


Rust 官方在线工具: https://play.rust-lang.org/


Rust 系列文章内容由 Sobin 收集整理。

Rust语言的特点

高性能 - Rust 速度惊人且内存利用率极高。由于没有运行时和垃圾回收,它能够胜任对性能要求特别高的服务,可以在嵌入式设备上运行,还能轻松和其他语言集成。


可靠性 - Rust 丰富的类型系统和所有权模型保证了内存安全和线程安全,让您在编译期就能够消除各种各样的错误。


生产力 - Rust 拥有出色的文档、友好的编译器和清晰的错误提示信息, 还集成了一流的工具 —— 包管理器和构建工具, 智能地自动补全和类型检验的多编辑器支持, 以及自动格式化代码等等。


Rust的应用

Rust 语言可以用于开发:


传统命令行程序 - Rust 编译器可以直接生成目标可执行程序,不需要任何解释程序。

Web 应用 - Rust 可以被编译成 WebAssembly,WebAssembly 是一种 JavaScript 的高效替代品。

网络服务器 - Rust 用极低的资源消耗做到安全高效,且具备很强的大规模并发处理能力,十分适合开发普通或极端的服务器程序。

嵌入式设备 - Rust 同时具有JavaScript 一般的高效开发语法和 C 语言的执行效率,支持底层平台的开发。

谁适合阅读本教程?

本教程对于初级的编程知识将默认读者已经掌握,所以如果你阅读本教程,你需要对初级的编程知识有一定的了解(最好已经初识 C/C++ 或 JavaScript 编程语言)。

第一个 Rust 程序

Rust 语言代码文件后缀名为 .rs, 如 runoob.rs。


实例:runoob.rs 文件

fn main() {  
    println!("Hello World!");  
}


运行实例 »


使用 rustc 命令编译 runoob.rs 文件:

$ rustc runoob.rs   # 编译 runoob.rs 文件

编译后会生成 runoob 可执行文件:


$ ./runoob    # 执行 runoob
Hello World!


总结

Rust 是什么 (what)

更严苛审查的编译运行式语言

why

更高的安全性?

不是很明确说实话。从了解到的资料来看,它被认为是c、c++的上位平替但是大家都提到了更陡峭的学习曲线。

how

看圣经

when

也许是十年后的顶峰

where

也许是十年后的大厂

所以,这是一场对未来的豪赌。即使它来自于2006年。

中二的发言结束了,现在让我们回到当前。从编码思想来看,这并不是我目前能回答的问题。那么就和我知道的编码语言来对比吧。

C、C++

目前我没看编码扩展。

从刚接触的情况来看,他应当是将部分内容内化到了编码器中,包括了 最基础的 #include  and #include 。


以至于他只有最基础的 函数类型 + 函数名 + 函数内容。


对了,他甚至都没有返回值。


以及神奇的 ! 我不知道这个这个是什么,但是去掉它,就没法执行得到结果了。这种在函数中加入符号的事情实在是太 cooooooooooooool了。


Python

他有点类似于 def 的方式去定义函数。但是他不依靠缩进,而是直接干净了当的使用花括号圈定了作用域。

这可是在是泰库辣!


并且,不同于 Python 中 万物皆变量的思想,很明显在Rust中是有函数的,并且将main()作为了程序编译时启动入口。

在编译成汇编时的那个程序jmp的地址。


Golang

应对最新了解的golang ,不做过多评判。

但是

可以简单索索


首先,它没有run、build 的双线选择路线。 可惜不能做脚本了。


其次,没有包,最起码没有独特的 package main来启动 最最最独特的 main()接口。

当然最起码它们都有()来表示函数,还有{}来规定作用域,不像python。使用:和 tab缩进。

这在黏贴到linux下时可能要改一些缩进错误,这样的的无用功。


和ChatGPT提问时,那可怜的token 数。


当然,它们都有编译然后执行可执行程序的用法。应当有编译后改名的方式,不然那也太不coooooooooooool了。


参考链接

Rust 官方网站

Rust 官方文档

Rust Play

Visual Studio Code

Rust语言圣经(Rust Course)

目录
相关文章
|
存储 消息中间件 Rust
Rust极简教程
Rust是一门赋予每个人构建可靠且高效软件能力的编程语言。可靠主要体现在安全性上。其高效不仅限于开发效率,它的执行效率也是令人称赞的,是一种少有的兼顾开发效率和执行效率的语言。Rust 语言由 Mozilla 开发,最早发布于 2014 年 9 月。Rust 的编译器是在 MIT License 和 Apache License 2.0 双重协议声明下的免费开源软件。
354 0
Rust极简教程
|
Rust 编译器
Rust 中级教程 第17课——引用的 lifetime(2)
Rust 中级教程 第17课——引用的 lifetime(2)
Rust 中级教程 第17课——引用的 lifetime(2)
|
Rust 编译器
Rust 中级教程 第16课——引用的 lifetime(1)
Rust 中级教程 第16课——引用的 lifetime(1)
Rust 中级教程 第16课——引用的 lifetime(1)
|
Rust C++
【Rust 中级教程】 15 引用与借用(3)
【Rust 中级教程】 15 引用与借用(3)
【Rust 中级教程】 15 引用与借用(3)
|
Rust 编译器
【Rust 中级教程】 13 引用与借用(1)
【Rust 中级教程】 13 引用与借用(1)
【Rust 中级教程】 13 引用与借用(1)
|
Rust 安全 编译器
【Rust 中级教程】 12 共享所有权
【Rust 中级教程】 12 共享所有权
【Rust 中级教程】 12 共享所有权
【Rust 中级教程】 11 所有权与trait(4)
【Rust 中级教程】 11 所有权与trait(4)
【Rust 中级教程】 11 所有权与trait(4)
【Rust 中级教程】 10 所有权(3)
【Rust 中级教程】 10 所有权(3)
【Rust 中级教程】 10 所有权(3)
|
Rust 安全 编译器
【Rust 中级教程】 09 所有权(2)
【Rust 中级教程】 09 所有权(2)
【Rust 中级教程】 09 所有权(2)
|
存储 Rust 安全
【Rust 中级教程】 08 所有权(1)
【Rust 中级教程】 08 所有权(1)
【Rust 中级教程】 08 所有权(1)