Course Outline

Advanced Ownership

  • Understanding lifetimes and borrowing
  • Exploring smart pointers: Box, Rc, and Arc
  • Working with reference cycles using Weak and Unsync
  • Advanced ownership patterns and techniques

Asynchronous Programming with Async/Await

  • Introduction to asynchronous programming in Rust
  • Working with async/await syntax
  • Composing futures and working with async libraries
  • Exploring the async ecosystem and libraries

Traits and Generics

  • Advanced trait usage and associated types
  • Implementing generic functions, structs, and enums
  • Bounds and trait objects
  • Exploring trait coherence and orphan rules

Advanced Error Handling

  • Creating custom error types
  • Advanced error handling techniques: try!, ? operator, custom error chains
  • Error handling strategies and patterns

Macros

  • Procedural macros: attribute and function-like macros
  • Declarative macros: macro_rules! and the match-like syntax
  • Advanced macro usage and metaprogramming

Performance Optimization

  • Profiling and benchmarking Rust code
  • Identifying performance bottlenecks
  • Optimization techniques: data structures, algorithms, and compiler flags
  • Writing high-performance Rust code

Advanced Concurrency

  • Advanced synchronization primitives: Mutex, RwLock, and Condvar
  • Implementing lock-free and wait-free data structures
  • Channels and message passing
  • Exploring advanced concurrency patterns

Advanced Troubleshooting

  • Advanced techniques for debugging and resolving complex issues in Rust programs
  • Profiling and optimizing performance in real-world scenarios
  • Strategies for handling edge cases and unusual behavior

Summary and Next Steps

Requirements

  • Proficiency in Rust Fundamentals or equivalent experience
  • Experience with systems-level programming
  • Intermediate-level programming experience

Audience

  • Developers
 21 Hours

Number of participants


Price per participant

Testimonials (1)

Provisional Upcoming Courses (Require 5+ participants)

Related Categories