Find bottlenecks, identify the proper algorithm to use, optimize performance, and create really efficient Rust applications
Key Features
Understand common performance pitfalls and improve the performance of your applications.
Get to grips with parallel programming and multithreading with Rust.
Learn metaprogramming in Rust.
Book Description
At times, it is difficult to get the best performance out of Rust. This book teaches you to optimize the speed of your Rust code to the level of languages such as C/C++. You'll understand and fix common pitfalls, learn how to improve your productivity by using metaprogramming, and speed up your code by concurrently executing parts of it safely and easily. You will master the features of the language which will make you stand out and use them to really improve the efficiency of your algorithms
The book begins with a gentle introduction to help you identify bottlenecks when programming in Rust. We highlight common performance pitfalls, along with strategies to detect and resolve these issues early. We move on to mastering Rust's type system, which will enable us to create impressive optimizations in both performance and safety at compile time. You will then learn how to effectively manage memory in Rust, mastering the borrow checker. We move on to measuring performance and you will see how this affects the way you write code. Moving ahead, you will perform metaprogramming in Rust to boost the performance of your code and your productivity. You will finally learn parallel programming in Rust, which enables efficient and faster execution by using multithreading and asynchronous programming.
What you will learn
Master tips and tricks to make your code faster.
Learn how to identify bottlenecks in your Rust applications
Discover how to profile your Rust software.
Understand the type system to create compile-time optimizations.
Master the borrow checker .
Learn metaprogramming in Rust to avoid boilerplate code.
Discover multithreading and work stealing in Rust.
Understand asynchronous programming in Rust.
Who this book is for
This book is for Rust developers keen to improve the speed of their code or simply to take their skills to the next level.
Iban Eguia Moraza is a passionate Rust developer. He has a bachelor's degree in computer engineering and a master's degree in information and communication security. He has over 10 years of experience in web development, and since 2015, he has been developing Rust applications. Iban loves space exploration and the latest technologies. In this regard, he has developed open source software for stratospheric balloons from the ground up, and he now works at the CERN particle physics laboratory. He likes to travel to learn from the most experienced people.