为什么Linux用户应该尝试Rust

Rust是一种相当年轻和现代的编程语言,具有许多功能,使其非常灵活且非常安全。 它也变得非常受欢迎,连续三年在Stack Overflow Developer Survey中赢得了“最受喜爱的编程语言”的第一名 - 2016年,2017年和2018年。

Rust也是一种开源语言,具有一系列特殊功能,可以适应许多不同的编程项目。 它源于2006年Mozilla员工的个人项目,几年后(2009年)被Mozilla收集为特别项目,然后在2010年宣布供公众使用。

Rust程序运行速度极快,可防止段错误,并保证线程安全。 这些属性使该语言极大地吸引了专注于应用程序安全性的开发人员。 Rust也是一种非常易读的语言,可用于从简单程序到非常大而复杂的项目。

Rust是:

  • 内存安全 - Rust不会受到悬空指针,缓冲区溢出或其他与内存相关的错误的影响。 它提供内存安全,无需垃圾回收。
  • 通用 - Rust是适用于任何类型编程的适当语言
  • 快速 - Rust在性能上与C/C ++相当,但具有更好的安全功能。
  • 高效 - Rust是为了便于并发编程而构建的。
  • 面向项目 - Rust有一个内置的依赖和构建管理系统Cargo。
  • 得到很好的支持 - Rust有一个令人印象深刻的支持社区

Rust还强制执行RAII(资源获取初始化)。 这意味着当一个对象超出范围时,将调用其析构函数并释放其资源,从而提供防止资源泄漏的屏蔽。 它提供功能抽象和一个伟大的类型系统以及速度和数学健全性。

简而言之,Rust是一种令人印象深刻的系统编程语言,具有其他大多数语言所缺乏的功能,使其成为C,C++和Objective-C等多年来使用的语言的有力竞争者。

安装Rust

安装Rust是一个相当简单的过程。

$ curl https://sh.rustup.rs -sSf | sh

安装Rust后,使用--version参数调用rustc或使用which命令显示版本信息。

$ which rustc
rustc 1.27.2 (58cc626de 2018-07-18)
$ rustc --version
rustc 1.27.2 (58cc626de 2018-07-18)

Rust入门

最简单的代码示例与您使用多种脚本语言之一时所输入的内容完全不同。

$ cat hello.rs
fn main() {
    // Print a greeting
    println!("Hello, world!");
}

在这些行中,我们正在设置一个函数(main),添加一个描述该函数的注释,并使用println语句来创建输出。 您可以使用下面显示的命令编译然后运行这样的程序。

$ rustc hello.rs
$ ./hello
Hello, world!

或者,您可以创建一个“项目”(通常仅用于比这个更复杂的程序!)来保持代码的有序性。

$ mkdir ~/projects
$ cd ~/projects
$ mkdir hello_world
$ cd hello_world

请注意,即使是简单的程序,一旦编译,就会变成相当大的可执行文件。

$ ./hello
Hello, world!
$ ls -l hello*
-rwxrwxr-x 1 shs shs 5486784 Sep 23 19:02 hello  <== executable
-rw-rw-r-- 1 shs shs      68 Sep 23 15:25 hello.rs

而且,当然,这只是一个开始 - 传统的"Hello, world!"程序。 Rust语言具有一系列功能,可帮助您快速进入高级编程技能。

学习Rust

Steve Klabnik和Carol Nichols(2018)的The Rust Programming Language一书提供了学习Rust的最佳方法之一。 本书由核心开发团队的两名成员撰写,可从No Starch Press或电子书格式打印到rust-lang.org。 它已经成为Rust开发者社区中的“书”。

为什么Linux用户应该尝试Rust

完整PDF文档可从以下信息得到下载:

如果取消关注Linux公社公众号,即使再次关注,也将无法提供本服务!

链接:https://pan.baidu.com/s/1AmJNSMww2TKke-gj1h1uiQ 密码:获得见上面的方法,地址失效请在下面留言。

------------------------------------------分割线------------------------------------------

全部下载见

在 2018年LinuxIDC.com/9月/为什么Linux用户应该尝试Rust/

------------------------------------------分割线------------------------------------------ 

在所涉及的众多主题中,您将了解这些高级主题:

  • Ownership and borrowing
  • Safety guarantees
  • Testing and error handling
  • Smart pointers and multi-threading
  • Advanced pattern matching
  • Using Cargo (the built-in package manager)
  • Using Rust's advanced compiler

目录

目录如下所示。

Foreword by Nicholas Matsakis and Aaron Turon
Acknowledgements
Introduction
Chapter 1: Getting Started
Chapter 2: Guessing Game
Chapter 3: Common Programming Concepts
Chapter 4: Understanding Ownership
Chapter 5: Structs
Chapter 6: Enums and Pattern Matching
Chapter 7: Modules
Chapter 8: Common Collections
Chapter 9: Error Handling
Chapter 10: Generic Types, Traits, and Lifetimes
Chapter 11: Testing
Chapter 12: An Input/Output Project
Chapter 13: Iterators and Closures
Chapter 14: More About Cargo and Crates.io
Chapter 15: Smart Pointers
Chapter 16: Concurrency
Chapter 17: Is Rust Object Oriented?
Chapter 18: Patterns
Chapter 19: More About Lifetimes
Chapter 20: Advanced Type System Features
Appendix A: Keywords
Appendix B: Operators and Symbols
Appendix C: Derivable Traits
Appendix D: Macros
Index

Rust编程语言将您从基本安装和语言语法带到复杂的主题,例如模块,错误处理,crates(与其他语言中的'library'或'package'同义),模块,生命周期等

可能最重要的是,本书可以让您从基本的编程技巧转向构建和编译复杂,安全且非常有用的程序。

总结

如果您已经准备好用一种非常值得花时间和精力学习并且越来越受欢迎的语言进行一些严肃的编程,那么Rust是一个不错的选择!

猜你喜欢

转载自www.linuxidc.com/Linux/2018-09/154409.htm