Rust for the C++ Developer
Rust is a systems language designed to prevent some of the pitfalls encountered in other languages. In this 2 day workshop, we will guide you through the fundamentals of the Rust language. Tailored for C++ developers.
Rust is a language originally made by Mozilla for use in browsers. It features both a powerful type system which makes writing abstractions easy and the borrow checker which gives the compiler the ability to guarantee memory safety. When you have an error in your code, the Rust compiler will typically pinpoint its exact location with a helpful diagnostic.
Rust is becoming extremely popular among programmers and was voted the most loved programming language in the 2020 StackOverflow survey. It is quickly gaining recognition as a preferred language across industries, with Amazon, Microsoft, and Google as notable examples. However, Rust is also known for its steep learning curve. This workshop will provide you with a path to understanding Rust and obtaining intermediate proficiency, designed for people familiar with C++.
- Project structure and the Cargo package manager
- Basic code structure
- Data types (Algebraic data types, Struct, Enum)
- Pattern matching, functional programming aspects
- Move semantics, the borrow checker
- Exercises, including Rust for embedded systems
Familiarity with C++ or another equivalent systems programming language is strongly recommended.
C++ programmers who are interested in getting started with the Rust programming language. People who are looking into the advantages of integrating Rust in their C++ project, or who want to stay up-to-date with the latest developments in the industry.
We recommend installing rust on your system ahead of the workshop: https://www.rust-lang.org/tools/install
Hans is a programmer and speaker with an interest in everything from electronic engineering to compiler development.
He regularly speaks at conferences about his Rust and Elixir work, and has been involved in the Rust community since 2015. He is a regular contributor to variety of open source Rust projects.