We provide virtual course about Rust Programming in english. Rust is an intriguing language. Syntactically similar to C++, it offers higher-order language features to simplify important tasks such as memory management, concurrent execution, and safe vs. unsafe execution.
Course description:
This course will help you understand what Rust applications look like, how to write Rust applications properly, and how to get the most out of the language and its libraries.
What you will learn:
• Creating, building, and running Rust applications
• Organizing Rust code and application structure properly
• Managing memory safely and effectively
• Using object-oriented techniques
• Using functional programming techniques
• Implementing concurrency
• Exploring additional Rust techniques
Course outline:
1) Getting Started with Rust:
• What is Rust
• What can I do with Rust
• What tools do I need for Rust
2) Rust Language Essentials:
• Types and variables
• Conditional logic
• Iteration
• Functions
• Collections
3) Organizing Rust Code:
• Modules
• Packages
• Crates
• Using the Cargo dependency manager and build tool
4) Error Handling:
• Overview
• Recoverable errors
• Unrecoverable errors
5) Object Orientation:
• Defining structures
• Implementing functionality
• Specifying traits
• Design patterns
6) Functional Programming:
• Concepts
• Anonymous functions
• Closures
• Patterns and techniques
7) Memory Management:
• What memory management problems does Rust solve
• Managing the stack and the heap
• Unsafe Rust
8) Ownership:
• The concept of ownership in Rust
• References
• Borrowing
• Slices
9) Smart Pointers:
• The role of smart pointers in Rust
• Using Box, Deref, and Drop
• Using Rc and RefCell
10) Concurrency:
• Overview of concurrency in Rust
• Creating threads
• Defining actors and passing messages
• Accessing shared data safely
11) Testing:
• Types of tests
• Writing tests
• Running tests
• Test techniques
12) Tour of Additional Rust Techniques:
• Embedded systems
• Data analysis
• Database access
Instructor: Andy Olsen
Andy is a freelance consultant and instructor based in the UK, working mostly in the City of London and Oxford. Andy has been working with .NET since the Beta 1 days and has extensive experience in many facets of .NET development including WCF, WPF, WF, ASP.NET MVC Web development, and mobile applications. Andy has designed and written many Microsoft Official Curriculum courses in the last decade, and has been engaged as author and technical reviewer with Apress on some of their biggest selling books.
Target audience:
Anyone who wants course about Rust Programming
Prerequisites:
• Experience with C/C++ or a similar programming language such as Go or Java
Language:
• The course is given in english