Systems programming provides the foundation for the world’s computation. Writing performance-sensitive code requires a programming language that puts programmers in control of how memory, processor time, and other system resources are used. The Rust systems programming language combines that control with a modern type system that catches broad classes of common mistakes, from memory management errors to data races between threads.
With this practical guide, experienced systems programmers will learn how to successfully bridge the gap between performance and safety using Rust. Jim Blandy, Jason Orendorff, and Leonora Tindall demonstrate how Rust’s features put programmers in control over memory consumption and processor use by combining predictable performance with memory safety and trustworthy concurrency.
You’ll learn:
- Rust’s fundamental data types and the core concepts of ownership and borrowing
- How to write flexible, efficient code with traits and generics
- How to write fast, multithreaded code without data races
- Rust’s key power tools: closures, iterators, and asynchronous programming
- Collections, strings and text, input and output, macros, unsafe code, and foreign function interfaces
It is certainly designed to not bore the reader.
You will probably get the most benefit of it if you have some system programming and C/C++ background (but this is not a must). Maybe it makes sense to use it as an accompanying book while implementing an enjoyable ;-) sample application/project e.g. from here: https://amzn.eu/d/dUDWfvn (that's what I did ;-).
Well-worth the cash
- For the System Developer's mostly
- Not good as an introduction to rust for beginners
- It refers C and C++ a lot so if you know C/C++ it would be easy to understand.
- Sometime it gets very deep very first. You will be introduced to concurrency in 21st page.
- Not a light reading.
- Best used with rustplayground or a terminal.
The balance of the book steps through the big things you need to understand Rust that you can't get through video tutorials or blog posts. I picked up Rust this past year and used it to create an API for my iOS application. I've been programming for forty-seven years, and this book gave me information in a way I've not experienced during my long career.
I reread many sentences, paragraphs, pages, and chapters to lock in what the book teaches. Rust is a beautiful language that produces great results. As you will read many times, it's a steep learning curve. This text is your rope line to a higher plane.