每当出现关于 Rust 的讨论,最终大抵都要以“炒作”问题结束。
很多朋友觉得 Rust 在网上水军太多,每天都会听到“Rust 最棒”、“人家 Rust 如何如何”、“Rust yyds”之类的言论。心里可能在想:这帮家伙就不能消停一会?
事实上,随着 Rust 的发展和表现出的优点,它确实吸引了越来越多的程序员关注。
首先,Rust 没有历史包袱,集表达力、高性能、内存安全于一身,可以说,掌握了 Rust,就相当于掌握了很多其他语言的精髓;把 Rust 引入你的技术栈,也让自己职业生涯多一门面向未来的利器。
其次,国内外不少大厂,都在采用 Rust 重构技术栈,比如字节的飞书、Google 的 Fuchsia 等,清华大学也开始让本科生学习 Rust 而不是 C/C++。
用起来就有多香,学起来就有多难。Rust 也是公认的难入门,学习曲线很陡峭。
除了普遍觉得不好学的所有权和生命周期以外,不同语言背景学习 Rust 还会有不同的难点:
- C 开发者,难点是类型系统和泛型编程;
- C++ 开发者,难点主要在类型系统;
- Java 开发者,难点在异步处理和并发安全的理解上;
- Golang 开发者,难点在类型系统和泛型编程;
- Python/Ruby/JavaScript 开发者,难点在并发处理、类型系统及泛型编程;
而且说真的,中文的 Rust 资料不多,不适合入门,也不系统,后来在知乎看到一位研究 Rust 的大佬「陈天」,看过很多篇他分享的 Rust 的入门难点解读,讲得很透。
他在极客时间写了个专栏《陈天 · Rust 编程第一课》,最近刚更新完成,我跟着更新的脚本看完了,不得不说,这课可谓全网最好的 Rust 入门教程,甚至微博有大佬表示,学完本课可直接投他们公司的简历!
说回专栏,陈天结合 18 年深度使用多种语言的经验,以先行者的身份输出了一份「Rust 学习路径图」,看下面:
内容由浅入深,对比多种语言,带你攻克 Rust 编程 10 大难点,有 100+ 原理图,详解 Rust 设计理念。最后通过 4 个项目实操训练,理论与实战两手抓,真正让你掌握 Rust 开发精髓。
再跟大家聊聊,作者「陈天」,现任北美最大的免费流媒体服务TubiTV 的研发副总裁。
有人说他是硅谷华人工程师的的典范,刻苦而努力,坚韧而不拔。而在我眼里,他是一个低调有礼的布道师,毫无保留地分享着 18 年工作经验累计的工程方法。
他一直主张“以合适的工具解决合适的问题”,所以,当面对不同的工作需求,他坚持深度使用形态和机理都大相径庭的开发语言。可以说,他对各个语言都了如指掌,这种资历的大佬能出来开课,把自己独特的 Rust 学习方法和经验共享出来,真的很难得。
现在专栏已经更新完毕,一共 58 讲。跟着读下来,最大的感触是,这个老师太会讲了,大家都知道 Rust 入门难,不好讲透,陈天能讲得通俗易懂、明明白白,且讲述中处处呈现他的思维方式、拆解问题的方法,吸引着我深挖下去。
专栏特色一:夯实基础 + 图文并茂
承担着「Rust 第一课」的使命,陈天讲得通俗易懂,把各个知识点类比到不同的语言中,设计了很多小而美的示例代码,引入 Rust 标准库的源代码进行分析,并且还精心绘制了大量的原理图。
每一讲都遵循「表层知识 → 解读源码 → 底层设计」的思路,力求帮你理解 Rust 繁多概念背后的设计逻辑。
专栏特色二:工程方法 + 项目实操
即使你看了再多的书,刷了再多的视频,你的 Rust 其实还是一地稀碎。纸上得来终觉浅,绝知此事要躬行,只有实践+学以致用才是最好的学习方式!
所以专栏每一模块都设计了实践内容,带你把 Rust 应用在生产环境中,以及用 Rust 解决实际问题。老师的思维方式拆解问题的方法都毫无保留的分享出来,值得反复去阅读、反复理解。
专栏特色三:刻意练习 + 答疑解惑
每个章节都会留个符合内容的思考题,老师在课程答疑时间不比打磨正文少,甚至在课程完结后老师还会去更新课程的代码,大家纷纷表示:爱了
而且课程中没有理解透彻的问题,都会在评论区找到陈天给的答案。可以说帮到不少人,截了些评价供你参考。
刚上线的时候是 40 讲,老师边写边延展内容,完结后已经 58 讲了。这种单纯的分享精神,也是很走心了。看看目录吧:
最后分享一句激励我学 Rust 的话:不管你未来是否使用 Rust,单单是学习 Rust 的过程,就能让你成为一个更好的程序员。
https://time.geekbang.org/hyb...
极客时间,一个宝藏学习平台。