1 Star 0 Fork 7

zhang-zhi-yuan / StudyRust

forked from 1595901624 / StudyRust 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 6.62 KB
一键复制 编辑 原始数据 按行查看 历史
1595901624 提交于 2023-04-06 22:18 . update readme

StudyRust 学习日记 源码

介绍

Rust是一门系统编程语言,专注于安全,尤其是并发安全,支持函数式和命令式以及泛型等编程范式的多范式语言。Rust在语法上和C++类似,但是设计者想要在保证性能的同时提供更好的内存安全。 Rust最初是由Mozilla研究院的Graydon Hoare设计创造,然后在Dave Herman, Brendan Eich以及很多其他人的贡献下逐步完善的。Rust的设计者们通过在研发Servo网站浏览器布局引擎过程中积累的经验优化了Rust语言和Rust编译器。Rust致力于成为优雅解决高并发和高安全性系统问题的编程语言,适用于大型场景,即创造维护能够保持大型系统完整的边界。这就导致了它强调安全,内存布局控制和并发的特点。标准Rust性能与标准C++性能不相上下。

目前Rust在商业领域增长迅速,其中包括:

  • Amazon,使用Rust 作为构建工具。
  • Atlassian,在后端使用Rust。
  • Dropbox,在前后端均使用了Rust。
  • Facebook,使用Rust 重写了源码管理工具。
  • Google,在Fuchsia 项目中部分使用了Rust。
  • Microsoft,在Azure IoT 网络上部分使用了Rust。
  • npm,在其核心服务上使用了Rust。
  • RedHat,使用Rust 创建了新的存储系统。
  • Reddit,使用Rust 处理评论。
  • Twitter,在构建团队中使用Rust。

目前国内巨头公司像字节跳动,蚂蚁金服等也都开始使用Rust语言了。

前言

这里是 Rust 学习日记 的全部源码源码。关于教程在简书CSDN掘金知乎同步更新。整套课程全部由笔者根据自己对Rust的理解和参考官方文档写的。当然本人水平有限,错误和不足之处在所难免,处理问题也有不妥之处,敬请各位大佬,专家批评改正。大家可以在这里提ISSUE或者在上述四个平台留言。

另外,本系列课程也是非常适合0编程语言基础的同学,如果您是Rust大神,那么可以忽略本系列的文章。本系列课程不是完全对官方文档的翻译,在文章中,我还会讲解一些常见的问题和注意事项,比较笔者已经踩过坑了。学习Rust之路可能比较陡峭,但是我会用最通俗的语言带你慢慢深入,课程将会从基础,进阶,实战,算法四个部分循序渐进的讲解。该系列教程所用的Rust版本是1.52.1(截至目前的最新版本)。

课程目前预计会更新100课时,简书CSDN不仅更新Rust教程,而且还会更新关于Rust初学者的一些练习题(约100题)。

讲个段子

两个初学者的对话。

C语言初学者:编译成功了,怎么运行又报错了...是哪里出了问题?

Rust语言初学者:怎么又编译失败了,程序什么时候能跑起来。。。

——如果你没有被Rust的编译器毒打过,请不要说你学过Rust

博客地址

反馈方式

由于本人水平有限,错误和不足之处在所难免,处理问题也有不妥之处,敬请各位大佬,专家批评改正。这里有以下三种方式反馈问题:

  • 在 Gitee 提ISSUE
  • 在 GitHub 提ISSUE
  • 在项目下面评论
  • 在上述四个平台留言

版权声明

源码仅供学习使用,切勿使用商业用途~

源码地址

源码目录

Part 1 学习日记

001-RUST 学习日记 第1课 ——Hello World

002-RUST 学习日记 第2课 ——Cargo

003-RUST 学习日记 第3课 ——IDE

004-RUST 学习日记 第4课 ——Rust规范

005-RUST 学习日记 第5课 ——变量和常量

006-RUST 学习日记 第6课 ——基本数据类型

007-RUST 学习日记 第7课 ——字面量和运算符

008-RUST 学习日记 第8课 ——类型转换

009-RUST 学习日记 第9课 ——输入与输出

010-RUST 学习日记 第10课 ——复合数据类型

011-RUST 学习日记 第11课 ——向量

012-RUST 学习日记 第12课 ——切片

013-RUST 学习日记 第13课 ——字符串(一)

014-RUST 学习日记 第14课 ——字符串(二)

015-RUST 学习日记 第15课 ——字符串的常用方法(一)

016-RUST 学习日记 第16课 ——字符串的常用方法(二)

017-RUST 学习日记 第17课 ——流程控制

018-RUST 学习日记 第18课 ——函数(一)

019-RUST 学习日记 第19课 ——函数(二)

020-RUST 学习日记 第20课 ——闭包

021-RUST 学习日记 第21课 ——迭代器

022-RUST 学习日记 第22课 ——结构体(上)

023-RUST 学习日记 第23课 ——结构体(下)

024-RUST 学习日记 第24课 ——枚举

Part 2 中级教程

001-Rust 中级教程 第1课——泛型

002-Rust 中级教程 第2课——结构体与泛型

003-Rust 中级教程 第3课——trait(1)

004-Rust 中级教程 第4课——trait(2)

005-Rust 中级教程 第5课——trait(3)

006-Rust 中级教程 第6课——trait(4)

007-Rust 中级教程 第7课——内存

008-Rust 中级教程 第8课——所有权(1)

009-Rust 中级教程 第9课——所有权(2)

010-Rust 中级教程 第10课——所有权(3)

011-Rust 中级教程 第11课——所有权与trait(4)

012-Rust 中级教程 第12课——共享所有权

013-Rust 中级教程 第13课——引用与借用(1)

014-Rust 中级教程 第14课——引用与借用(2)

015-Rust 中级教程 第15课——引用与借用(3)

016-Rust 中级教程 第16课——引用的lifetime(1)

017-Rust 中级教程 第17课——引用的lifetime(2)

018-Rust 中级教程 第18课——trait object(1)

019-Rust 中级教程 第19课——trait object(2)

020-Rust 中级教程 第20课——Box(2)

021-Rust 中级教程 第21课——Drop trait

022-Rust 中级教程 第22课——内部可变性(1)

023-Rust 中级教程 第23课——内部可变性(2)

024-Rust 中级教程 第24课——下划线

Part 3 进阶教程

001-Rust 进阶教程 第01课 闭包与所有权

002-Rust 进阶教程 第02课 详解迭代器(1)

003-Rust 进阶教程 第03课 详解迭代器(2)

Part Ext
  • rust 与 wasm

  • rust 与 wasm——操作dom

  • 抖音短视频解析工具

  • 抖音短视频解析工具(GUI)

  • 使用 Rust 实现与 ChatGPT 对话

未完待续...

Rust
1
https://gitee.com/zhang-zhi-yuan/study-rust.git
git@gitee.com:zhang-zhi-yuan/study-rust.git
zhang-zhi-yuan
study-rust
StudyRust
master

搜索帮助