Course Outline
Introduction
- Defining Rust and its core principles
- Comparing Rust with other programming languages
- Overview of Rust's key features and architecture
Delving into Rust
- The lifecycle of a Rust program
- How Rust operates at the systems level
- Memory safety and the concept of ownership in Rust
Getting Started
- Setting up the development environment
- Installing Rust as part of the programming toolchain
- Configuring the Rust development environment
- Introduction to the Cargo package manager
Fundamental Syntax and Concepts
- Variables and data types in Rust
- Control flow mechanisms and loops
- Defining functions and modules
- The principles of ownership and borrowing
Error Handling and Panics
- Managing errors using Result and Option types
- Distinguishing between unwinding and aborting with panic!
- Creating custom error types and implementing error handling strategies
Memory Management in Rust
- Allocating memory on the stack versus the heap
- Utilising pointers and references in Rust
- Managing memory through Box and unsafe blocks
Structs and Enums in Systems Programming
- Defining and manipulating structs
- Creating and leveraging enums
- Applying pattern matching techniques in Rust
Interfacing with C and Low-Level Code
- Connecting Rust with C and C++ codebases
- Utilising FFI (Foreign Function Interface)
- Working with raw pointers and unsafe code
Concurrency and Synchronization
- Concurrency models relevant to systems programming
- Using Mutex, RwLock, and Condvar for synchronisation
- Implementing channels and message passing for inter-thread communication
Debugging and Troubleshooting Rust Programs
- Essential tools and techniques for debugging Rust applications
- Profiling methods and performance analysis
- Resolving common issues encountered in systems programming
Conclusion and Future Directions
Requirements
- Fundamental grasp of core programming concepts
- Proficiency in at least one programming language (such as C or C++)
Target Audience
- Developers
Custom Corporate Training
Training solutions designed exclusively for businesses.
- Customized Content: We adapt the syllabus and practical exercises to the real goals and needs of your project.
- Flexible Schedule: Dates and times adapted to your team's agenda.
- Format: Online (live), In-company (at your offices), or Hybrid.
Price per private group, online live training, starting from 4350 € + VAT*
Contact us for an exact quote and to hear our latest promotions
Testimonials (2)
Very good topic structure, perfect presentation, very high level of trainer's knowlwdge. Flawless infrastructure.
Tibor Pozsgai
Course - Rust Advanced
Solid introduction to rust with advanced elements like macros. Practical code exercises, a lot of side comments, free discussion and consultations.