Duration
3 Days (8 hours per day)
Level
Basic Level
Design and Tailor this course
As per your team needs
The Working with Rust training course is designed to demonstrate how Rust combines modern functional programming with low-level memory management details.
This course starts with an introduction to Rust and a discussion as to why it is quickly becoming the most loved programming language. Next, it explores the basics of reading and writing Rust syntax on the command line. The course concludes with an analysis of compiling Rust to WebAssembly to get performant code on the web.
After this course, you will be able to:
- Describe how Rust differs from other programming languages
- Describe and use the Rust memory model
- Identify the benefits of moving runtime errors to compile-time errors
- Install Rust and use Cargo (Rusts package manager and build tool)
- Use the rich features of the standard library
- Embrace Rusts Fearless Concurrency approach
- Use Rust to build modern safe and fast software systems
Software developers, Web developers, and QA engineers who wish to learn Rust programming language to develop scalable applications for mobile and web.
- What is RUST?
- History and evolution of RUST
- Why choose RUST?
- Key features and advantages
- RUST ecosystem and community
- Installing RUST compiler and tools
- Configuring IDEs and text editors for RUST
- Managing dependencies with Cargo
- Syntax and basic data types
- Variables, constants, and mutability
- Control flow: loops and conditionals
- Functions and closures
- Error handling with Result and Option types
- Ownership rules and concepts
- Borrowing and references
- Lifetimes in RUST
- Ownership patterns and best practices
- Defining and using structs
- Enumerations and pattern matching
- Implementing methods for structs and enums
- Advanced usage scenarios
- Defining traits and implementing them
- Trait bounds and associated functions
- Working with generics in RUST
- Trait objects and dynamic dispatch
- Introduction to concurrency in RUST
- Threads and thread communication
- Asynchronous programming with async-await
- Parallelism using Rayon and other libraries
- Panic vs. Result vs. Option
- Custom error types
- Exception safety and error propagation
- Handling panics gracefully
- Macros and meta-programming
- Unsafe RUST: when and how to use it safely
- Interfacing with C and other languages
- Writing high-performance RUST code
- RUST coding conventions and style guidelines
- Performance optimization tips
- Common mistakes and how to avoid them
- Rust’s growth and adoption trends
Having basic programming knowledge in languages like C++, Java, or Python would help with knowledge of HTML, CSS, and JavaScript.