Course outline for Rust
About Rust
Pre-requisites for learning Rust
- The participants must be comfortable with programming constructs in any one language
Lab Setup
- Hardware Configuration
- 2GB of free RAM, 20GB of free disk space and full network connectivity
- Software Configuration
- Ubuntu 20.04/22.04 Desktop Edition (sudo/root access required)
Duration
- 2 – 5 days
Training Mode
Online training for Rust
We provide:
- Instructor led live training
- Self-paced learning with access to expert coaches
- 24x7 access to cloud labs with end to end working examples
All jnaapti sessions are 100% hands-on. All our instructors are engineers by heart. Activities are derived from real-life problems faced by our expert faculty. Self-paced hands-on sessions are delivered via Virtual Coach.
Classroom training for Rust
Classroom sessions are conducted in client locations in:
- Bengaluru
- Chennai
- Hyderabad
- Mumbai
- Delhi/Gurgaon/NCR
Note: Classroom training is for corporate clients only
Detailed Course Outline for Rust
Introduction to Rust
- Installation
- Rust - HelloWorld
Rust Fundamentals
- Variables and Data Types
- Conditionals and Loops
- Functions in Rust
Ownership in Rust
- Introduction to Ownership in Rust
- Reference and Borrowing in Rust
- Slices in Rust
Structs, Enums and Pattern Matching
- Defining struct
- Defining enum
- Understanding match operation
Rust Collections
- Vectors
- Strings
- Hash Maps
Exception Handling
- Unrecoverable error
- Recoverable error
- Setting conditional panic
Generics in Rust
- Generic struct and enum
- Generic function
Traits and Lifetime
- Defining trait
- Implementing trait
- Trait bounds
- Validating reference
- Generic lifetime
- Lifetime annotation
Functional Programming with Rust
- Closure
- Iterator
Crates, Cargo and Modules
- Creating modules
- Visibility control using pub
- Importing names with use
- Multiple file crates
- Importing external crates
- Publishing crates
- Cargo workspace
Pointers
- Understading Box, Deref, Drop, Rc and RefCell
- Raw pointers
Concurrency in Rust
- Threads
- Message Passing
- Shared State
- Extensible Concurrency