Visão Geral
Este curso Rust Programming Fundamentals, apresenta os fundamentos da linguagem Rust, abordando desde a filosofia de design, segurança de memória e modelo de ownership até os principais recursos da linguagem para desenvolvimento de software moderno. O foco está em construir uma base sólida para criação de aplicações seguras, performáticas e concorrentes, preparando o aluno para atuar em sistemas de baixo nível, back-end, sistemas embarcados e aplicações de alta confiabilidade.
Conteúdo Programatico
Module 1: Introduction to Rust
- History and Motivation of Rust
- Rust Use Cases and Ecosystem
- Rust vs C/C++ and Other Languages
Module 2: Rust Toolchain and Project Structure
- Installing Rust and Toolchains
- Cargo and Project Management
- Crate Structure and Modules
Module 3: Basic Syntax and Data Types
- Variables and Mutability
- Scalar and Compound Types
- Functions and Expressions
Module 4: Ownership, Borrowing, and Lifetimes
- Ownership Rules
- References and Borrowing
- Lifetimes Fundamentals
Module 5: Control Flow and Pattern Matching
- Conditional Expressions and Loops
- Match Expressions
- If let and While let
Module 6: Structs, Enums, and Traits
- Defining and Using Structs
- Enums and Algebraic Data Types
- Traits and Implementations
Module 7: Error Handling and Option Types
- Result and Error Propagation
- Option Type and Null Safety
- Custom Errors
Module 8: Memory Safety and Concurrency Basics
- Stack vs Heap
- Safe Concurrency Concepts
- Threads and Ownership
Module 9: Standard Library and Common Patterns
- Collections and Iterators
- String Handling
- Common Rust Idioms
Module 10: Final Project and Next Steps
- Building a CLI Application
- Code Organization Best Practices
- Paths for Advanced Rust Development