当前位置: 首页 > news >正文

Rust学习如何更有信心?

关于如何学习Rust,在Hacker News上有一篇非常火的教程,作者通过自己的Rust学习经历,向大家指出了一条如何学习Rust的路径。

学习一门编程语言必不可少的是阅读技术书籍和编写代码,要想掌握Rust,两者的交替学习至关重要。

作者Eli Bendersky分享了自己一年Rust的学习经历,我们来一起了解一下。

首先,作者将所有读过的Rust书籍做出了一些评价。

作者学习Rust时,阅读的第一本书叫做《Programming Rust》;这本书对Rust进行了初步介绍,包括Rust1.50版本的详细概述和参考。

这本书虽然是Rust的入门书籍,只是对低级编程的熟悉,但还是要求你有一定的编程基础,特别是在内存管理方面的知识。

其次就是《The Rust Programming Language》,作者认为这本书比《Programming Rust》更具有参考性,虽然作者还没有将此书全部读完,但书中重要的部分已全部阅读。

同样,阅读这本书也是需要一定的编程基础,这本书对各种不同编程背景的开发人员依然是非常有用的。

很多人都将这本书当作Rust入门指南,该书由两名核心Rust成员编写,经过社区中多个开发者的反馈和贡献。

总的来说,你想要阅读这两本Rust书籍,你必须得有一些编程基础。

紧接着作者分享了一本《Rust In Action》书籍,这本书重点讲解的是编程项目,属于Rust中级编程范畴。

这本书专注于对系统编程,书中列举的代码值得我们学习和借鉴,介绍的方法非常有趣,适合对Rust有一定了解的程序员阅读。

作者最后推荐的是《Rust for Rustaceans》这本书,作者之所以喜欢这本书的原因是因为之前看过该书作者发布的一些视频,但在看完本书后失望透顶,不值得推荐。

这本书将官方资料和专业资料进行了混合,整本书中几乎只有文字讲解,没有图文和代码示例,无法学到可用的编译项目。

至此,作者已将自己全部学习的Rust书籍分享完毕,接下来就是分享自己是如何练习编码的。

编码练习

作者根据自己的经验,推荐了一些学习编码渠道。

如果你是刚刚学习Rust,可以先使用Rustlings,它可以用来作为代码片段阅读和编写,这对于小白的你还是很有帮助。

在接着就是Advent of Code,对练习Rust编程非常适用,里面一共有25个编程题目,你可以根据它的指示来完成代码编写,直至完成任务。通过解决AOC问题,相信你可以很好的练习和学习Rust语言。

作者已经完成了前18道题目,后面还会将剩下题目的都完成。

接下来作者推荐了一本关于单元测试和易于翻译成伪代码的一本书,叫做《The Ray Tracer Challenge book》,用于指导我们使用编程语言实现光线追踪。

这本书讲解了为什么要提供公式和伪代码,通过构建可视化项目,帮助培养开发直觉,让你在学习一门新的编程语言时不感到枯燥。

总体来说,这本书还是很值得阅读。

作者最后讲到了《Crafting Interpreters》这本书,书中主要讲解如何使用Rust开发解释器,包含前端和后端的所有部分。

作者对本书评价很高,这是他看过的编译器书籍中最有价值的一本书,也是最为实用的。

除上述部分,作者为了探索Rust的各个领域,做了很多实验。如果你有兴趣,你可以访问作者的官网。

http://www.lryc.cn/news/457299.html

相关文章:

  • 3个简单易懂的方法,教你马上掌握excel表格数据打印技巧
  • dbt 增量策略模型实战教程
  • 【含文档】基于Springboot+Android的校园论坛系统(含源码+数据库+lw)
  • Go版数据结构 -【8.4 快速排序】
  • 达梦DBLINK访问ORACLE配置方法
  • 基础知识1
  • 网页前端开发之Javascript入门篇(9/9):对象
  • Oracle RAC IPC Send timeout detected问题分析处理
  • QT 实现QMessageBox::about()信息自定义显示
  • (C++进阶)C++20
  • 【常用的安装破解版指令】MAC安装破解版软件显示文件损坏时
  • 【QT Quick】定时器和线程:定时器Timer
  • 【NIO基础】NIO(非阻塞 I/O)和 IO(传统 I/O)的区别,以及 NIO 的三大组件详解
  • HDLBits中文版,标准参考答案 | 3.1.3 Arithmetic Circuits | 算术电路
  • 网络编程 websocket
  • 【JDK17 | 5】Java 17 深入剖析:新的随机数生成器 API
  • 剪切走的照片:高效恢复与预防策略
  • 基于XGBoost的结核分枝杆菌的耐药性预测研究【多种机器学习】
  • 【C++差分数组】3229. 使数组等于目标数组所需的最少操作次数|2066
  • 浅谈PyTorch中的DP和DDP
  • 在Windows上利用谷歌浏览器进行视频会议和协作
  • VMware Fusion 13.6.1 发布下载,修复 4 个已知问题
  • P9751 [CSP-J 2023] 旅游巴士
  • 【Linux】man手册安装使用
  • mysql学习教程,从入门到精通,SQL处理重复数据(39)
  • mapbox解决wmts请求乱码问题
  • 《C++职场中设计模式的学习与应用:开启高效编程之旅》
  • Maya动画--基础约束
  • 腾讯云License 相关
  • 开放式耳机什么品牌最好?十大超好用开放式耳机排名!