DEV Community

Mario Fernández
Mario Fernández

Posted on • Originally published at hceris.com on

2

Book Review: The Rust programming language

The Rust programming language

Rust is not a new language by any means, but it’s getting plenty of attention lately. As you might’ve heard, it’s a relatively low-level systems programming language. Similar to golang in a sense, with a completely different approach to memory management.

Apart from the classical use cases, I really like using Rust to make fast, super-portable CLI tools that are easy to package in a container. A compiled binary is a lot easier to handle than something like a Python-based tool with a ton of dependencies.

For a systems programming language, Rust is surprisingly rich in features. Pattern matching, Option, and Result types, who knew? This power comes at the cost of complexity. Rust is definitely not a simple language, which is why this book clocks at 500 pages. The borrow checker is very different from anything you’ve seen before, and you’ll have to re-read that chapter over and over until you start making sense of the concept. Lifetimes are pretty tricky as well. By the time things like multi-threading came around, I was pretty overwhelmed.

Luckily, this book is an excellent reference to navigate all these ideas. And it covers the ecosystem as well, which is a nice plus. You’ll learn about cargo, its build system, and package manager. Testing makes an appearance, which is great news for all the TDD lovers.

All in all, if you want to get started understanding Rust, this book is an excellent starting point. It won’t be the last one you read if you’re going to get a deeper understanding of the whole thing.

Verdict

This is a comprehensive book, not only introducing the language but the ecosystem as well. The only thing I missed was going a bit more into the community’s best practices and established conventions. Although to be fair, it’s already a pretty long book as it’s. It gets ⭐⭐⭐⭐ stars from me.

Image of Datadog

Master Mobile Monitoring for iOS Apps

Monitor your app’s health with real-time insights into crash-free rates, start times, and more. Optimize performance and prevent user churn by addressing critical issues like app hangs, and ANRs. Learn how to keep your iOS app running smoothly across all devices by downloading this eBook.

Get The eBook

Top comments (1)

Collapse
 
learnitmyway profile image
David

By the time things like multi-threading came around, I was pretty overwhelmed

I might give this a go later then 😅

Image of Docusign

🛠️ Bring your solution into Docusign. Reach over 1.6M customers.

Docusign is now extensible. Overcome challenges with disconnected products and inaccessible data by bringing your solutions into Docusign and publishing to 1.6M customers in the App Center.

Learn more