Rust Servers, Services, and Apps

Prabhu Eshwarla

Language: English

ID: 326

Published: Jul 12, 2023

Description:

This book is not a reference guide; rather, it is meant as an introduction and should serve as an inspiring guide to the breadth of network services that can be developed in Rust. It takes the form of a hands-on tutorial in order to maximize learning and retention.

 

Who should read this book

This book is designed primarily for backend software engineers involved or interested in server-side, web backend, and API development; distributed systems engineers who wish to explore Rust as an alternative to Go, Java, or C++; and software engineers working on low-latency servers and applications in areas such as machine learning, artificial intelligence, the Internet of Things, image/video/audio processing, and backends for real-time systems.

To get the most from this book, you should have both backend development experience and some familiarity with Rust. Specifically, as a backend developer, you should have proficiency in web service concepts including HTTP, JSON, database access with ORM, and API development in any high-level language (e.g., Java, JavaScript, Python, C#, Go, or Ruby). As an advanced beginner or intermediate-level Rust programmer, you should understand how to replicate and modify open source tutorials and repositories and be familiar with the following aspects of Rust:

 

✅ Rust primitives (data types), user-defined data structures (structs, enums), functions, expressions, and control loops (if, for, and while loops)

✅ Immutability, ownership, references, and borrowing

✅ Error handling with Result and option structures

✅ Basic functional constructs in Rust

✅ The Rust toolchain, including Cargo for build and dependency management and code formatting, documentation, and automated testing tools

 

Please see “Other online resources” later in this section for recommendations for refreshing or increasing your Rust knowledge.