blog icon indicating copy to clipboard operation
blog copied to clipboard

Rust 简明教程 | 快速入门 | 极客兔兔

Open geektutu opened this issue 4 years ago • 7 comments

https://geektutu.com/post/quick-rust.html

Rust简明教程,Rust入门教程,Rust 是一门系统编程语言(Systems Programming Language),兼顾安全(Safety)、性能(Speed)和并发(Concurrency)。包括 Rust 和 Cargo 安装、基本类型(字符串str,整形等)、控制流(if, if let, while let, loop, for循环等)、复杂类型(struct, enum等),以及错误处理(panic, Result),Cargo 项目的代码结构,如何测试 Rust 代码等。

geektutu avatar Nov 24 '19 16:11 geektutu

这是开始搞 Rust 了?和 golang 比较感觉怎么样?

niqingyang avatar Dec 17 '19 03:12 niqingyang

@niqingyang 这个语言最近比较火,跟着官方教程走了一遍,有个初步的理解。

和 golang 相比的话,两者面向的领域有交集,不过 Rust 可以做得更底层,比如开发一个嵌入式操作系统,golang 就做不到了。Rust 在编译期确保安全,所有权机制是Rust实现安全特性的核心,不过写起来有点反人类。

使用 golang 的场景应该不会用 Rust,比如云计算场景。不过 Rust 取代 C 的领域,比如开发操作系统,内核模块啥的,golang 也做不了。各有优势吧,Rust 的安全特性确实是替代 C 的一个好的切入点。

geektutu avatar Dec 17 '19 08:12 geektutu

@niqingyang 这个语言最近比较火,跟着官方教程走了一遍,有个初步的理解。

和 golang 相比的话,两者面向的领域有交集,不过 Rust 可以做得更底层,比如开发一个嵌入式操作系统,golang 就做不到了。Rust 在编译期确保安全,所有权机制是Rust实现安全特性的核心,不过写起来有点反人类。

使用 golang 的场景应该不会用 Rust,比如云计算场景。不过 Rust 取代 C 的领域,比如开发操作系统,内核模块啥的,golang 也做不了。各有优势吧,Rust 的安全特性确实是替代 C 的一个好的切入点。

又一个反人类语言 ... 还好不是来替换 java、golang 的,否则重度选择困难症患者表示好难啊!

niqingyang avatar Dec 17 '19 11:12 niqingyang

fn summarize(&self) -> String { format!("width={}, height={}", self.width, self.height) } 这里的双引号里面应该要少一对大括号,文中的写法编译器会报错

感觉Rust的语法跟go和python都有相似之处,学起来有种很微妙的感觉,不过代码风格还是挺优美,决定学完后这学期的嵌入式作业就用Rust写

weoking avatar Mar 30 '20 10:03 weoking

@weoking 感谢指出问题,如果希望输出结果是:{width=30, height=50},那么需要用 {{ 表示 {}} 表示 },修正如下:

fn summarize(&self) -> String {
    format!("{{width={}, height={}}}", self.width, self.height)
}

geektutu avatar Mar 30 '20 11:03 geektutu

rust很好,只是有的语法确实怪异

ghost avatar May 02 '20 12:05 ghost

好神奇的语法

ppd0705 avatar Mar 28 '21 12:03 ppd0705