Course Outline
Introduction to Rust
- Defining the Rust language and its purpose.
- Comparing Rust with other established programming languages.
- An overview of Rust's key features and architectural components.
Core Concepts of Rust
- The lifecycle of a Rust application.
- How Rust complements other programming languages in a stack.
- Rust's unique strategies for ensuring memory safety and concurrency.
Initial Setup and Configuration
- Setting up the development workspace.
- Installing Rust as part of your programming toolchain.
- Configuring the Rust development environment for optimal use.
- Utilizing Cargo, Rust's native package manager.
Syntax Fundamentals and Core Ideas
- Working with variables and various data types.
- Implementing control flow structures and loops.
- Defining functions and organizing code into modules.
- Mastering the concepts of ownership and borrowing in Rust.
Data Structures and Pattern Matching
- Defining and utilizing structs to model data.
- Creating enums and implementing matching logic.
- Applying pattern matching techniques in Rust.
Robust Error Handling
- Managing errors effectively using Result and Option types.
- Handling runtime panics using panic! and unwrap().
- Designing and implementing custom error types.
Project Organization and Packaging
- Best practices for organizing Rust code.
- Creating and leveraging modules for code structure.
- Building and distributing Rust packages via Cargo.
Quality Assurance and Documentation
- Developing and executing tests in Rust.
- Leveraging the integrated testing framework.
- Writing clear documentation using comments and docstrings.
Introduction to Concurrency
- Foundational concepts of concurrency in Rust.
- Spawning and managing threads.
- Techniques for synchronization and message passing.
Interoperability with Existing Systems
- Facilitating communication between Rust and other programming languages.
- Invoking Rust functions from C or C++ environments.
- Exposing Rust APIs for consumption by other language stacks.
Idiomatic Rust and Best Practices
- Exploring standard Rust coding styles and idioms.
- Adhering to Rust community conventions.
- Selecting and utilizing popular libraries and frameworks.
Diagnostics and Problem Solving
- Strategies for identifying and resolving frequent issues in Rust applications.
Recap and Future Directions
Requirements
- A solid grasp of fundamental programming principles.
- Proficiency in at least one prior programming language, with a preference for C or C++.
Target Audience
- Software 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 2900 € + 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.