Rust学习_1.引言

引言

学习Rust其实已经一个多月了,回过头来想写一些东西;

主要是为了理清楚为什么要开始学Rust、如何将学习有效地进行下去;另外,整理一下学习过程。

为什么开始学Rust?

主要原因是想“make some change!”,现在的工作并不能让我感到满意,无论是工作内容、工作方式、还是工作之后获得的报酬,都让我想做出“改变”。不知道是在知乎还是微信公众号看到关于Rust语言的布道文章,让我提起了学习一门新语言的兴趣。最后基于下面四个方面的考虑,令我下定了学习的决心:

  1. 之前使用的语言让我难受;

  2. Rust入门门槛高,远离内卷;

  3. Rust优点、编写风格让我很喜欢;

  4. 接触到区块链,很感兴趣,Rust挺适合写区块链;

1. 之前使用的语言让我难受

  • 2015年本科毕业投身互联网浪潮,从事Java和Android应用开发至2017年5月,这段时间的编码过程其实还挺爽,不过也有可能是脑子里的东西不多,之后考取研究生;

  • 2018年至2021年研究生期间主要使用JavaScript、python语言开发前端页面和做聚类算法,其他接触到的语言包括C++、C#、Fortran、R语言、matlab、TypeScript 等;

从接触过的所有语言来看,按照”代码看着爽”的程度排序:C++ > Java > C# > TypeScript > JavaScript > python > Fortran = matlab = R语言。如果按”编码过程爽”排序C++得往后挪几个身位。

​ 总的来说,我更喜欢严谨、规范的语言,在写JavaScript和python的过程中,总是无法让我体验编码的舒畅,写出来的代码总是无法让我感到满意和放心。

2. Rust入门门槛高,远离内卷

任何事物都具有两面性,Rust语言的特点之一就是入门门槛高,一方面需要学习者付出更多的时间和精力;另一方面也会自动筛掉学习能力不足的一部分人,缓解内卷。

其实Java写起来也会让我有一种舒适感,但是考虑到年纪也不小了,而且搞Java的人实在太多太内卷了。所以选择不再继续深挖了,工作够用就行。

3. Rust优点、编写风格让我很喜欢

4. Rust适合写区块链

2021年参加工作之后,同事里面有不少炒币的,出于好奇专门看了一些区块链的文章和课程,去中心化、分布式共识、可编程的智能合约……让我感到很是神奇。

当区块链遇上Rust

如何将学习有效地进行下去?

从我的经验来看掌握一门语言最好的方式是快速掌握语法、特性、关键api,然后尽早通过实践来熟悉语言。现在我对Rust的学习主要是通过官方出品的Rust权威指南Rustlings Course,以及codewars网站上的算法练习。从目前学习的效果来看,存在是实践少、Rust工程化经验不足、忘的快等问题。亟须制定有效地学习计划,并严格地执行,以此达到高效学习,快速度过初中级阶段。下面是我目前搜集到Rust相关的一些学习资源: