Rust Programming: From Fundamentals to Advanced Concepts with AI-Assisted Development
6h 36mAdvanced2024-09-25
Authors

Pragmatic AI Labs

Alfredo Deza
Course details
Get a solid foundation in the powerful and efficient Rust programming language with core language concepts, syntax, tooling, and best practices. Learn Rust basics like variables, data types, control flow, and ownership rules. Then, move on to advanced concepts, including structs, enums, traits, lifetimes, and concurrency. The course also explains how to use powerful tools like rust-analyzer, development and debugging techniques, string manipulation, error handling, and more. Plus, learn about leveraging AI pair programming with GitHub Copilot, Rust coding best practices for readability and performance, building and documenting your own libraries using Cargo, and techniques for writing safe, concurrent, and lock-free code
Whether you’re starting as a total beginner or experienced programmer, check out this course to master Rust to build reliable, high-performance software.
Whether you’re starting as a total beginner or experienced programmer, check out this course to master Rust to build reliable, high-performance software.
Skills covered
RustProgramming FoundationsArtificial Intelligence FoundationsArtificial Intelligence (AI)Programming LanguagesOpen SourceSoftware DevelopmentOne-Off
Concepts
0. Introduction
- 01 - Meet your course instructor - Alfredo Deza
- 02 - About this course
1. Installing Rust and Setting Up Your Text Editor
- 03 - Overview of installing Rust
- 04 - Demo - Installing Rust
- 05 - Demo - Visual Studio Code
- 06 - Demo - Enabling the rust-analyzer
- 07 - Demo - Using the rust-analyzer
- 08 - Demo - Synchronizing your settings
- 09 - Summary of installing Rust and Visual Studio Code
2. Using AI Pair Programming with GitHub Copilot
- 10 - Overview of using GitHub Copilot
- 11 - Demo - Signing up for GitHub Copilot
- 12 - Demo - Installing and enabling Copilot in Visual Studio Code
- 13 - Demo - Programming with suggestions
- 14 - Demo - Using prompts with Copilot
- 15 - Demo - Copilot X and chat-based learning
- 16 - Summary
3. Introduction to Codespaces
- 17 - Overview of Codespaces
- 18 - Demo - Fundamentals of Codespaces
- 19 - Demo - Understanding usage and quotas
- 20 - Demo - Basics of dev containers
- 21 - Demo - Customizing the editor
- 22 - Demo - Customizing the environment
- 23 - Summary of Codespaces
4. Introduction to Rust
- 24 - Introduction to Rust
- 25 - Demo - Create a new Rust project
- 26 - Demo - Overview of project files
- 27 - Demo - Basic components of Rust code
- 28 - Demo - Variable assignment and immutability
- 29 - Demo - Basics of control flow
- 30 - Demo - Shadowing variables
- 31 - Summary of introduction to Rust
5. Loops and Control Flow
- 32 - Introduction to loops and control flow
- 33 - Demo - Introduction to loops in Rust
- 34 - Demo - Conditional statements in Rust
- 35 - Demo - The while loop in Rust
- 36 - Demo - The for loop in Rust
- 37 - Demo - The break and continue statements
- 38 - Demo - The match control flow in Rust
- 39 - Summary of loops and control flow
6. Function Basics
- 40 - Introduction to function basics
- 41 - Demo - Simple unit functions
- 42 - Demo - Return values
- 43 - Demo - Using arguments
- 44 - Demo - The borrowing concept
- 45 - Demo - Using panic to stop a program
- 46 - Demo - Basic error handling with match
- 47 - Summary of function basics
7. Using Structured Data
- 48 - Introduction to structured data
- 49 - Demo - Defining structs
- 50 - Demo - Creating struct instances
- 51 - Demo - Associated functions and constructors
- 52 - Demo - Other struct uses
- 53 - Summary of structured data
8. Exploring Strings and Vectors
- 54 - Introduction to strings and vectors
- 55 - Demo - Understanding string and str
- 56 - Demo - Getting started with Rust string manipulation
- 57 - Demo - Basics of vectors
- 58 - Demo - Retrieving values from vectors
- 59 - Demo - Adding elements to vectors
- 60 - Summary of strings and vectors
9. Working with Enum and Variants
- 61 - Introduction to enums and variants
- 62 - Demo - Defining an enum
- 63 - Demo - Using enum as a type
- 64 - Demo - The option enum
- 65 - Demo - Applied enums
- 66 - Demo - Using vectors with enums
- 67 - Demo - Exhaustive matches
- 68 - Summary of enums and variants
10. Building a Real-World Library
- 69 - Introduction to libraries and Cargo
- 70 - Demo - Creating the library with Cargo
- 71 - Demo - Adding code to lib
- 72 - Demo - Documenting your code
- 73 - Demo - Using a debugger
- 74 - Demo - Using a makefile
- 75 - Summary of libraries and Cargo
11. Extending Functionality with Modules
- 76 - Introduction to modules
- 77 - Demo - Using Cargo for dependencies
- 78 - Demo - Extending with modules
- 79 - Demo - Verify code with doctest
- 80 - Demo - Defining public and private modules
- 81 - Demo - Private and public fields in structs
- 82 - Summary of modules
12. Testing Rust Code
- 83 - Introduction to testing
- 84 - Demo - Organizing test files
- 85 - Demo - Introduction to testing in Rust
- 86 - Demo - Writing tests for your code
- 87 - Demo - Testing private code
- 88 - Demo - Using test failure messages
- 89 - Summary of testing
Conclusion
- 90 - Course summary
Related courses
Related learn paths
- Prepare for the AWS Certified Security - Specialty (SCS-C02) Certification
- Develop Your Rust Skills for Data Engineering
- Prepare for the Google Cloud Professional Machine Learning Engineer Certification
- Master Substance Designer and Substance Painter
- Prepare for the Google Cloud Professional Cloud Architect Certification