Rust 语言新人入门指南

首先,学习 Rust 不能急躁。如果你抱着之前 1 天上手 Python, 2 天入门 Go 的经验和优越感来学习 Rust 的话,你可能会遭遇严重的失败感。如果你来自 Haskell/Ocaml 等函数式语言社区,你会有相当的亲切感。对于有丰富 C++ 开发经验的同学来说,上手可能相对比较容易。

了解

一般来说,要决定学习一门新语言之前,会先大体了解下这门语言的特点和目前的发展情况。这时,建议看

  • Rust 官网 https://rust-lang.org
  • Rust Force https://rustforce.net Rust 基本要素汇集
  • Rust 语言中文社区论坛 https://rust.cc
  • 《Rust语言学习交流》公众号,每日 Rust 新闻和知识推送
  • 知乎 有很多关于 Rust 相关的知识、专栏、博客等

看书

了解大体情况后,可能就想看看书,系统的学习一下。目前,网络上 Rust 电子书籍有:

  • The Book https://doc.rust-lang.org/book/ 官方的 Rust 书(最新第二版,必看)
  • The Book 中文翻译 https://github.com/KaiserY/rust-book-chinese
  • Rust Primer https://rustcc.gitbooks.io/rustprimer/content/ Rust 中文社区推出的教程

电子书看着没感觉,想买实体书来看看,目前国内有如下两本已出版 Rust 学习教程。

实体书

  • 《Rust 编程之道》 张汉东 电子工业出版社 2019-1
  • 《深入浅出Rust》范长春 机械工业出版社 2018-8

练习

想做下练习

  • Rust By Example https://doc.rust-lang.org/stable/rust-by-example/

看着看着书,想加入社区,与大家交流一下?下面罗列了国内目前QQ群和微信群

QQ 群

综合群:

  • Rust编程语言社区1群,群号:303838735 (已满,只能内部邀请)
  • Rust编程语言社区2群,群号:813448660
  • Rust水群(编程社区子群),群号:253849562

专题群:

  • Rust Redox发行版开发群,群号:437268658
  • Rust Data Science 研究小组,群号:681142501
  • Rust webassembly/wasm社区,群号:347929175
  • Rust社群-区块链研究,群号:617238820
  • Rust 嵌入式开发,群号:825820683
  • φ Rust图形学,群号:812748521
  • 哲学与计算,群号:446590168

地方线下聚会群:

  • 北京:305842562
  • 上海:966129249
  • 深圳:673715651
  • 广州:738772514
  • 成都:131080784
  • 重庆:962149536

微信群

主题群

  • Rust China Community 500 人,已满
  • Rust 语言学习交流 2 群
  • RustCon Asia 2019
  • Rust 移动端音视频开发
  • Rust ctp 交流群
  • Rust workshop
  • Rust 编程
  • CSDN Rust 语言群
  • 魅力 Rust(《Rust编程之道》读者交流群)

同城群

  • Rust Meetup - BJ 北京
  • Rust Meetup - SH 上海
  • Rust Meetup - HZ 杭州
  • Rust Meetup - SuZhou 苏州
  • Rust Meetup - NJ 南京
  • Rust Meetup - CD 成都
  • Rust Meetup - CQ 重庆
  • Rust Meetup - XA 西安
  • Rust Meetup - WH 武汉
  • Rust Meetup - CS 长沙
  • Rust Meetup - 大湾区 深圳、大湾区
  • Rust Meetup - GZ 广州
  • Rust Meetup - SG 新加坡
  • Rust Meetup - Canada 加拿大

(以上微信群,请加 daogangtang 微信号后申请进入)

开发

开始开发具体的工程了,cargo 和 crates.io 必须好好了解一下。

国内 crates.io 源太慢,有解决办法:

Rustcc 联合 LongHash 提供了国内 Rust 开发者专属 crates.io 镜像。把下面内容填充到你的 ~/.cargo/config 文件中(没有就创建一个)。

[source.crates-io]
replace-with = "rustcc"

[source.rustcc]
registry = "https://code.aliyun.com/rustcc/crates.io-index.git"

然后,就尽情地享受飞一般的感觉吧。

招聘情况

想了解一下目前国内的 Rust 招聘情况,可以看这里

招聘:https://rust.cc/section?id=fed6b7de-0a74-48eb-8988-1978858c9b35

更多话题

更多话题 ,比如 编辑器如何配置,哪个IDE最好,如何配置,Rust 目前在哪些领域有应用,Rust 有什么杀手锏应用,区块链为什么越来越多选择用 Rust 来实现,WebAssembly 与 Rust 的关系等等,就不展开介绍了,上面提到的各种资源,以及网络上,有丰富的信息,大家可以自行查阅。

最后

In Rust, We Trust.

本文分享自微信公众号 - Rust语言学习交流(rust-china)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-09-24

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏海风

ROM存储1/4周期正弦信号构造DDS

实际中如果只需要合成正弦信号,那么DDS核是一个很好的选择,而且DDS核可以选择是否采用泰勒校正以获取更低的杂散。由于ROM表中的数据可以由我们自己选择...

8820
来自专栏用户4822892的专栏

Top 5 Real Life Usage of Blockchain

Many businesses are embracing blockchain technology to simplify tasks in their f...

6830
来自专栏CDA数据分析师

贵州大数据亮相2019智博会

8月26日,以“智能化:为经济赋能,为生活添彩”为主题的2019中国国际智能产业博览会(下称智博会)在重庆盛大开幕,来自世界各地的顶尖科学家、行业领军翘楚、商界...

11630
来自专栏数据小魔方

一个R语言中操纵矢量空间数据的标准化工具—sf

摘要 Simple features是一种在计算机中编码矢量空间数据(点、线、面等)的标准化方法。sf包在R语言中引入了simple features对象,它基...

26440
来自专栏汇智网教程

开发应用专用的Substrate区块链!

Substrate是开发应用特定区块链 (Application Specific Blockchain )的快速开发框架。与基于以太坊等公链开发的DApp相比...

15810
来自专栏汇智网教程

用EthMon.php监听以太坊代币转账交易

EthMon开发包用于监听以太坊ERC20代币合约的转账交易,官方下载地址: http://sc.hubwiz.com/codebag/ethmon-php/。

22910
来自专栏区块链大本营

公钥加密、加密Hash散列、Merkle树……区块链的密码学你知多少?

密码学是区块链技术的核心。所有的交易信息都会被编码到区块里,而区块链则是由这一个个区块连接在一起而形成的结构。

8110
来自专栏区块链应用开发

数字货币Libra的主要特点及我国的应对措施

6月18日,全球最大的社交网络公司Facebook宣布将在2020年推出数字货币Libra,引起广泛关注。虽然Libra尚处探索阶段,存在巨大争议,但货币数字化...

22550
来自专栏汇智网教程

Web3j 4.x手机钱包开发教程【含Java源码】

本教程讲解如何使用Web3j 4.x和Infura提供的以太坊节点开发安卓手机以太坊钱包应用,教程包括项目依赖配置、以太坊节点选择、以太坊钱包地址创建、测试以太...

9910
来自专栏Fractal 区块链

Fractal CTO 范磊:PoS 能不能实现真正去中心化?

2019年9月6日,Fractal Platform CTO 范磊在Fractal社区,进行了主题为《PoS能不能实现真正去中心化?》的在线直播。文章比较长,约...

12920

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励