Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
Introduction
- Definition of the Rust programming language
- Comparative analysis of Rust relative to other languages
- Summary of Rust’s core features and architectural design
Comprehensive Overview of Rust
- The execution lifecycle of a Rust application
- Rust operations at the system level
- Mechanisms ensuring memory safety through ownership principles
Initialization and Setup
- Configuration of the development workspace
- Installation of the Rust toolchain
- Environment configuration for Rust development
- Overview of the Cargo package management system
Fundamental Syntax and Concepts
- Variation, declaration, and data typing in Rust
- Execution flow and iterative structures
- Construction and organization via functions and modules
- Principles of ownership and borrowing
Error Management and Failure Handling
- Management of errors using Result and Option types
- Distinctions between unwinding and aborting via panic!
- Implementation of custom error types and strategic handling approaches
Memory Allocation Strategies in Rust
- Differences between stack and heap memory allocation
- Utilization of pointers and references
- Memory control via Box smart pointers and unsafe code blocks
Data Structures for Systems Development
- Definition and utilization of structs
- Creation and application of enums
- Implementation of pattern matching constructs
Integration with C and Low-Level Systems
- Integration of Rust code with C and C++ components
- Application of the Foreign Function Interface (FFI)
- Operations involving raw pointers and unsafe code contexts
Concurrent Execution and Synchronization
- Architectural models for concurrency in systems programming
- Synchronization mechanisms including Mutex, RwLock, and Condvar
- Inter-thread communication via channels and message passing
Diagnostic Procedures and Issue Resolution
- Instrumentation and methodologies for debugging Rust applications
- Performance profiling and analysis techniques
- Resolution of prevalent issues in systems programming contexts
Conclusion and Forward Path
Requirements
- Foundational knowledge of software development principles
- Proficiency in at least one programming language, such as C or C++
Audience
- Software engineers and developers seeking solutions for government agencies
21 Hours
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.