- This is a beginner course suitable for anyone wanting to use Rust for developing libraries or applications.
- To be able to write programs in Rust.
- To master the rich set of Rust libraries (crates).
- Duration of the course is 24 academic hours. (3 full days).
- The course includes approximately 40% hands on lab work.
- Installing Rust
- Why use Rust?
- Cargo - the package and dependency manager of Rust
- Hello World
- Primitives - basic types in Rust
- Variables, mutability
- Control flow
- Understanding memory safety, ownership and borrowing
- They type system of Rust
- Error handling
- Special types: Option, Result
- Creating libraries in Rust
- Generics and Traits
- Variable lifetime
- Smart pointers
- Dependency management
- Backword compability
- Testing your code
- Distributing executables for multiple platforms (CI/CD, cross compilation)
- Relevant Computer Science topics
- Data embedded in the source code
- What is the Stack, Heap
- Memory management
- Manual memory managemen with allocation and freeing
- Refernce counting
- Garbage collection
- Compiled vs. Interpreted languages
- Statically type vs. dynamically typed languages
- Loosly typed vs strongly typed
- Functiona programmin in Rust
- Function pointers
- Concurrency with async programming
- The liquid Templating system
- CLI - Command line applications in Rust
- Building API in Rust
- Handling well-knonw file formats
- Unsafe Rust and FFI - Foreign Function Interface
Contact: Gabor Szabo firstname.lastname@example.org