课程介绍:
Rust开发者训练营 | The Rust Developer Bootcamp
文件内容:视频+配套课件+中英文字幕
视频源地址:https://letsgetrusty.com/
♂️快速启动并运行!(初学者模块)
您将学习如何设置开发环境、配置 IDE 以及安装正确的插件。然后您将创建您的第一个 Rust项目!
✅如何自定义开发环境
✅配置IDE和插件
✅使用Cargo创建Rust包
✅Rust 中的变量和数据类型
✅常量和静态变量
✅函数和运行时管理
⚠️Rust 中的内存安全(初学者模块)
学习 Rust 时了解内存管理至关重要!在本节中,您将从头开始了解内存管理!
✅ 基于Rust的计算机科学硕士课程
✅ 所有权是如何工作的
✅ 借用是如何工作的
✅ 切片是什么
✅ 字符串类型(str、&str和String)
构建您自己的数据类型(初学者模块)
Rust 没有类或对象!相反,Rust 使用结构体和枚举来表示自定义数据类型。在本节中,您将学习如何创建自己的类型!
✅ 如何创建结构体和枚举
✅ 如何使用实现块(Implementation Blocks)
✅ 模式匹配(Pattern Matching)
✅ Option和Result枚举
✅ 向量(Vectors)
如何组织你的Rust项目(初学者模块)
在这个部分,我将以易于理解的方式解释模块是如何工作的。我还将介绍如何组织更大的项目,并将你的工作发布到Crates.io。
✅ 项目结构概述
✅ 模块系统
✅ 外部依赖
✅ 条件编译
✅ 如何组织更大的项目
✅ 发布你的Rust项目
如何测试和文档化你的代码(初学者模块)
测试是编写健壮代码的关键部分。在这个部分,您将学习如何在Rust中编写和组织单元测试和集成测试。我们还将介绍文档化。
✅ 如何编写单元测试
✅ 如何编写集成测试
✅ 如何组织你的测试
✅ 文档注释
使用泛型和特征实现多态性(中级模块)
Rust不支持经典的继承!相反,通过泛型和特征实现多态性。在这个部分,你将学习它们的工作原理!
✅ 如何定义泛型
✅ 特征系统
✅ 特征约束和特征对象
✅ 超特征
✅ 静态分发 vs 动态分发
✅ 如何派生特征
✅ 标准库中的特征
⚡高级内存管理(中级模块)
内存管理不仅仅涉及所有权和借用!在这个部分,你将学习有关生命周期的知识!我们还将介绍Rust中的各种智能指针。
✅ 具体生命周期
✅ 泛型生命周期注解
✅ 函数和结构体中的生命周期
✅ 智能指针及其有用之处
✅ 隐式 Deref 强制转换
理解Rust中的错误处理(中级模块)
在设计Rust应用程序时,理解错误处理是至关重要的。在本节中,我们将介绍Rust中的错误处理机制。
✅ 如何抛出不可恢复的错误
✅ 如何返回可恢复的错误
✅ 如何传播错误
✅ Result 和 Option 枚举
✅ 如何处理多个错误类型
✅ 如何使用 anyhow 和 thiserror
Rust中的函数式特性(中级模块)
Rust最强大的特性之一就是其函数式特性。在本节中,我们将介绍闭包、函数指针、迭代器等内容!
✅ 闭包和函数指针
✅ Rust中的迭代器模式
✅ 实现迭代器模式
✅ 如何遍历集合
✅ 组合器以及如何使用它们
并发与async/.await(高级模块)
这可能是最重要的部分。理解并发是至关重要的,特别是在使用Rust进行与Web相关的项目时。
✅ 基本的并发概念
✅ 创建线程
✅ 使用通道进行消息传递
✅ 使用互斥锁共享状态
✅ async/.await模型
✅ Futures的工作原理
✅ 什么是异步运行时
✅ 什么是Tokio以及如何使用它
✅ 什么是Tokio任务
✅ 运行CPU阻塞代码
✅ Streams
✨Rust强大的宏系统(高级模块)
宏是一种非常强大的扩展语言语法的方式。在这个部分,你将从基础开始学习Rust中的宏系统!
✅ 编译过程
✅ 宏的概念
✅ 如何创建声明性宏
✅ 如何创建过程宏
✅ 函数式过程宏
✅ 属性式过程宏
✅ 自定义派生过程宏
不安全的Rust和FFI(外部函数接口)(高级模块)
Rust的一个巨大优势是通过外部函数接口(FFI)与其他语言进行交互。在这个部分,你将学习不安全的Rust和FFI!
✅ 不安全的Rust及其使用时机
✅ 如何解引用原始指针
✅ 不安全函数是什么
✅ 不安全特性是什么
✅ 如何修改静态变量
✅ 如何在Rust中编写内联汇编
✅ 如何从Rust调用C代码
✅ 如何从C调用Rust代码
就业准备专题课程
基于Rust的计算机科学主修课程
为了理解Rust,你首先必须了解基本的计算机科学概念,如栈和堆、指针、手动内存管理、垃圾回收器等等。在这个主修课程中,你将学习这些基本的计算机科学概念,以便建立坚实的基础。
✅ 内存区域(栈、堆、静态内存)
✅ 手动内存管理
✅ 垃圾回收器和引用计数
实践项目
微服务主修课程
微服务是将庞大的代码库拆分为分布式组件的一种方式。Rust非常适合构建高性能的微服务。在这个主修课程中,你将学习如何使用Rust构建微服务以及最流行的相关技术。
✅ 微服务概述
✅ 使用Rust创建微服务
✅ 使用gRPC和Protobuf创建微服务
✅ 构建和部署
实践项目
系统编程主修课程
Rust是一种系统编程语言,让我们充分利用这一点!在这个主修课程中,你将学习如何为嵌入式设备创建Rust程序!
✅ 低级编程概述
✅ 嵌入式设备编程
✅ 与操作系统接口
课程目录:
001. Don't skip this video!.en.vtt 001. Don't skip this video!.mp4 001. Don't skip this video!.srt 002. How to use this Bootcamp effectively.en.vtt 002. How to use this Bootcamp effectively.mp4 002. How to use this Bootcamp effectively.srt 003. Hello World.en.vtt 003. Hello World.mp4 003. Hello World.srt 004. Variables.en.vtt 004. Variables.mp4 004. Variables.srt 005. Data Types.en.vtt 005. Data Types.mp4 005. Data Types.srt 006. Constants & Statics.en.vtt 006. Constants & Statics.mp4 006. Constants & Statics.srt 007. Functions.en.vtt 007. Functions.mp4 007. Functions.srt 008. Control Flow.en.vtt 008. Control Flow.mp4 008. Control Flow.srt 009. Comments.en.vtt 009. Comments.mp4 009. Comments.srt 010. Stack, Heap, and Static Memory.en.vtt 010. Stack, Heap, and Static Memory.mp4 010. Stack, Heap, and Static Memory.srt 011. Memory Management Strategies.en.vtt 011. Memory Management Strategies.mp4 011. Memory Management Strategies.srt 012. C++ RAII vs Rust OBRM - Part 1.en.vtt 012. C++ RAII vs Rust OBRM - Part 1.mp4 012. C++ RAII vs Rust OBRM - Part 1.srt 013. C++ RAII vs Rust OBRM - Part 2.en.vtt 013. C++ RAII vs Rust OBRM - Part 2.mp4 013. C++ RAII vs Rust OBRM - Part 2.srt 014. Ownership.en.vtt 014. Ownership.mp4 014. Ownership.srt 015. Ownership Continued.en.vtt 015. Ownership Continued.mp4 015. Ownership Continued.srt 016. Borrowing.en.vtt 016. Borrowing.mp4 016. Borrowing.srt 017. Slices.en.vtt 017. Slices.mp4 017. Slices.srt 018. BONUS Masterclass Strings in Rust. PART 1.en.vtt 018. BONUS Masterclass Strings in Rust. PART 1.mp4 018. BONUS Masterclass Strings in Rust. PART 1.srt 019. BONUS Masterclass Strings in Rust. PART 2.en.vtt 019. BONUS Masterclass Strings in Rust. PART 2.mp4 019. BONUS Masterclass Strings in Rust. PART 2.srt 020. Structs.en.vtt 020. Structs.mp4 020. Structs.srt 021. Implementation Blocks.en.vtt 021. Implementation Blocks.mp4 021. Implementation Blocks.srt 022. Tuple Structs.en.vtt 022. Tuple Structs.mp4 022. Tuple Structs.srt 023. Enums.en.vtt 023. Enums.mp4 023. Enums.srt 024. Matching.en.vtt 024. Matching.mp4 024. Matching.srt 025. Option.en.vtt 025. Option.mp4 025. Option.srt 026. Result.en.vtt 026. Result.mp4 026. Result.srt 027. Vectors.en.vtt 027. Vectors.mp4 027. Vectors.srt 028. Project Structure Overview.en.vtt 028. Project Structure Overview.mp4 028. Project Structure Overview.srt 029. Modules.en.vtt 029. Modules.mp4 029. Modules.srt 030. Modules Continued.en.vtt 030. Modules Continued.mp4 030. Modules Continued.srt 031. External Dependencies.en.vtt 031. External Dependencies.mp4 031. External Dependencies.srt 032. Publishing Your Package.en.vtt 032. Publishing Your Package.mp4 032. Publishing Your Package.srt 033. Cargo Features.en.vtt 033. Cargo Features.mp4 033. Cargo Features.srt 034. Cargo Workspaces.en.vtt 034. Cargo Workspaces.mp4 034. Cargo Workspaces.srt 035. Unit Tests.en.vtt 035. Unit Tests.mp4 035. Unit Tests.srt 036. Integration Tests.en.vtt 036. Integration Tests.mp4 036. Integration Tests.srt 037. Documentation.en.vtt 037. Documentation.mp4 037. Documentation.srt 038. BONUS Benchmark Testing.en.vtt 038. BONUS Benchmark Testing.mp4 038. BONUS Benchmark Testing.srt 039. Generics.en.vtt 039. Generics.mp4 039. Generics.srt 040. Traits.en.vtt 040. Traits.mp4 040. Traits.srt 041. Trait Bounds.en.vtt 041. Trait Bounds.mp4 041. Trait Bounds.srt 042. Supertraits.en.vtt 042. Supertraits.mp4 042. Supertraits.srt 043. Trait Objects.en.vtt 043. Trait Objects.mp4 043. Trait Objects.srt 044. Deriving Traits.en.vtt 044. Deriving Traits.mp4 044. Deriving Traits.srt 045. The Orphan Rule.en.vtt 045. The Orphan Rule.mp4 045. The Orphan Rule.srt 046. Concrete Lifetimes.en.vtt 046. Concrete Lifetimes.mp4 046. Concrete Lifetimes.srt 047. Generic Lifetimes.en.vtt 047. Generic Lifetimes.mp4 047. Generic Lifetimes.srt 048. Structs & Lifetime Elision.en.vtt 048. Structs & Lifetime Elision.mp4 048. Structs & Lifetime Elision.srt 049. Box Smart Pointer.en.vtt 049. Box Smart Pointer.mp4 049. Box Smart Pointer.srt 050. Rc Smart Pointer.en.vtt 050. Rc Smart Pointer.mp4 050. Rc Smart Pointer.srt 051. RefCell Smart Pointer.en.vtt 051. RefCell Smart Pointer.mp4 051. RefCell Smart Pointer.srt 052. Deref Coercion.en.vtt 052. Deref Coercion.mp4 052. Deref Coercion.srt 053. Unrecoverable Errors.en.vtt 053. Unrecoverable Errors.mp4 053. Unrecoverable Errors.srt 054. Recoverable Errors.en.vtt 054. Recoverable Errors.mp4 054. Recoverable Errors.srt 055. Propagating Errors.en.vtt 055. Propagating Errors.mp4 055. Propagating Errors.srt 056. Result and Option.en.vtt 056. Result and Option.mp4 056. Result and Option.srt 057. Multiple Error Types.en.vtt 057. Multiple Error Types.mp4 057. Multiple Error Types.srt 058. Overview of Error Handling.en.vtt 058. Overview of Error Handling.mp4 058. Overview of Error Handling.srt 059. Basic Error Handling.en.vtt 059. Basic Error Handling.mp4 059. Basic Error Handling.srt 060. Custom Errors 1.en.vtt 060. Custom Errors 1.mp4 060. Custom Errors 1.srt 061. Custom Errors 2.en.vtt 061. Custom Errors 2.mp4 061. Custom Errors 2.srt 062. Custom Errors 3.en.vtt 062. Custom Errors 3.mp4 062. Custom Errors 3.srt 063. thiserror & anyhow.en.vtt 063. thiserror & anyhow.mp4 063. thiserror & anyhow.srt 064. BONUS error-stack.en.vtt 064. BONUS error-stack.mp4 064. BONUS error-stack.srt 065. Closures.en.vtt 065. Closures.mp4 065. Closures.srt 066. Closures Continued.en.vtt 066. Closures Continued.mp4 066. Closures Continued.srt 067. Function Pointers.en.vtt 067. Function Pointers.mp4 067. Function Pointers.srt 068. Iterator Pattern.en.vtt 068. Iterator Pattern.mp4 068. Iterator Pattern.srt 069. Iterator Pattern Continued.en.vtt 069. Iterator Pattern Continued.mp4 069. Iterator Pattern Continued.srt 070. Iterating Over Collections.en.vtt 070. Iterating Over Collections.mp4 070. Iterating Over Collections.srt 071. Combinators.en.vtt 071. Combinators.mp4 071. Combinators.srt 072. Intro to Concurrency.en.vtt 072. Intro to Concurrency.mp4 072. Intro to Concurrency.srt 073. Creating Threads.en.vtt 073. Creating Threads.mp4 073. Creating Threads.srt 074. Moving Values Into Threads.en.vtt 074. Moving Values Into Threads.mp4 074. Moving Values Into Threads.srt 075. Message Passing Between Threads.en.vtt 075. Message Passing Between Threads.mp4 075. Message Passing Between Threads.srt 076. Sharing State Between Threads.en.vtt 076. Sharing State Between Threads.mp4 076. Sharing State Between Threads.srt 077. Sharing State Between Threads Continued.en.vtt 077. Sharing State Between Threads Continued.mp4 077. Sharing State Between Threads Continued.srt 078. Send & Sync Traits.en.vtt 078. Send & Sync Traits.mp4 078. Send & Sync Traits.srt 079. async.await Basics.en.vtt 079. async.await Basics.mp4 079. async.await Basics.srt 080. Tokio Tasks.en.vtt 080. Tokio Tasks.mp4 080. Tokio Tasks.srt 081. CPU Intensive Code.en.vtt 081. CPU Intensive Code.mp4 081. CPU Intensive Code.srt 082. Streams.en.vtt 082. Streams.mp4 082. Streams.srt 083. Intro to Macros.en.vtt 083. Intro to Macros.mp4 083. Intro to Macros.srt 084. Declarative Macros.en.vtt 084. Declarative Macros.mp4 084. Declarative Macros.srt 085. Declarative Macros Continued.en.vtt 085. Declarative Macros Continued.mp4 085. Declarative Macros Continued.srt 086. Procedural Macros.en.vtt 086. Procedural Macros.mp4 086. Procedural Macros.srt 087. Procedural Macros - Function Like.en.vtt 087. Procedural Macros - Function Like.mp4 087. Procedural Macros - Function Like.srt 088. Procedural Macros - Custom Derive.en.vtt 088. Procedural Macros - Custom Derive.mp4 088. Procedural Macros - Custom Derive.srt 089. Procedural Macros - Attribute Like.en.vtt 089. Procedural Macros - Attribute Like.mp4 089. Procedural Macros - Attribute Like.srt 090. Procedural Macros - Attribute Continued.en.vtt 090. Procedural Macros - Attribute Continued.mp4 090. Procedural Macros - Attribute Continued.srt 091. Unsafe Basics.en.vtt 091. Unsafe Basics.mp4 091. Unsafe Basics.srt 092. Dereferencing a Raw Pointer.en.vtt 092. Dereferencing a Raw Pointer.mp4 092. Dereferencing a Raw Pointer.srt 093. Calling an Unsafe Function.en.vtt 093. Calling an Unsafe Function.mp4 093. Calling an Unsafe Function.srt 094. Implementing an Unsafe Trait.en.vtt 094. Implementing an Unsafe Trait.mp4 094. Implementing an Unsafe Trait.srt 095. Mutable Static Variables.en.vtt 095. Mutable Static Variables.mp4 095. Mutable Static Variables.srt 096. Inline Assembly.en.vtt 096. Inline Assembly.mp4 096. Inline Assembly.srt 097. FFI C from Rust.en.vtt 097. FFI C from Rust.mp4 097. FFI C from Rust.srt 098. FFI Rust from C.en.vtt 098. FFI Rust from C.mp4 098. FFI Rust from C.srt 099. BONUS FFI Rust fromPython.en.vtt 099. BONUS FFI Rust from Python.mp4 099. BONUS FFI Rust from Python.srt 100. What are microservices.en.vtt 100. What are microservices.mp4 100. What are microservices.srt 101. Why Rust is great for microservices.en.vtt 101. Why Rust is great for microservices.mp4 101. Why Rust is great for microservices.srt 102. Communication with gRPC.en.vtt 102. Communication with gRPC.mp4 102. Communication with gRPC.srt 103. Containerization with Docker.en.vtt 103. Containerization with Docker.mp4 103. Containerization with Docker.srt 104. CICD with GitHub Actions.en.vtt 104. CICD with GitHub Actions.mp4 104. CICD with GitHub Actions.srt 105. Cloud Providers.en.vtt 105. Cloud Providers.mp4 105. Cloud Providers.srtgithub.txt links.txt![[衡天云]爆款云服务器 低至12元/月](/hty.png)