Book description
The Rust Programming Language is the official book on Rust: an open source systems programming language that helps you write faster, more reliable software. Rust offers control over low-level details (such as memory usage) in combination with high-level ergonomics, eliminating the hassle traditionally associated with low-level languages.
The authors of The Rust Programming Language, members of the Rust Core Team, share their knowledge and experience to show you how to take full advantage of Rust’s features—from installation to creating robust and scalable programs. You’ll begin with basics like creating functions, choosing data types, and binding variables and then move on to more advanced concepts, such as:
•Ownership and borrowing, lifetimes, and traits
•Using Rust’s memory safety guarantees to build fast, safe programs
•Testing, error handling, and effective refactoring
•Generics, smart pointers, multithreading, trait objects, and advanced pattern matching
•Using Cargo, Rust’s built-in package manager, to build, test, and document your code and manage dependencies
•How best to use Rust’s advanced compiler with compiler-led programming techniques
You’ll find plenty of code examples throughout the book, as well as three chapters dedicated to building complete projects to test your learning: a number guessing game, a Rust implementation of a command line tool, and a multithreaded server.
New to this edition: An extended section on Rust macros, an expanded chapter on modules, and appendixes on Rust development tools and editions.
Table of contents
- Cover Page
- Title Page
- Copyright Page
- About the Authors
- Brief Contents
- Contents in Detail
- FOREWORD by Nicholas Matsakis and Aaron Turon
- PREFACE
- ACKNOWLEDGMENTS
- INTRODUCTION
- 1 GETTING STARTED
- 2 PROGRAMMING A GUESSING GAME
- 3 COMMON PROGRAMMING CONCEPTS
- 4 UNDERSTANDING OWNERSHIP
- 5 USING STRUCTS TO STRUCTURE RELATED DATA
- 6 ENUMS AND PATTERN MATCHING
- 7 MANAGING GROWING PROJECTS WITH PACKAGES, CRATES, AND MODULES
- 8 COMMON COLLECTIONS
- 9 ERROR HANDLING
- 10 GENERIC TYPES, TRAITS, AND LIFETIMES
- 11 WRITING AUTOMATED TESTS
- 12 AN I/O PROJECT: BUILDING A COMMAND LINE PROGRAM
- 13 FUNCTIONAL LANGUAGE FEATURES: ITERATORS AND CLOSURES
- 14 MORE ABOUT CARGO AND CRATES.IO
- 15 SMART POINTERS
- 16 FEARLESS CONCURRENCY
- 17 OBJECT-ORIENTED PROGRAMMING FEATURES OF RUST
- 18 PATTERNS AND MATCHING
- 19 ADVANCED FEATURES
- 20 FINAL PROJECT: BUILDING A MULTITHREADED WEB SERVER
- A KEYWORDS
- B OPERATORS AND SYMBOLS
- C DERIVABLE TRAITS
- D USEFUL DEVELOPMENT TOOLS
- E EDITIONS
- INDEX
Product information
- Title: The Rust Programming Language (Covers Rust 2018)
- Author(s):
- Release date: July 2019
- Publisher(s): No Starch Press
- ISBN: 9781718500440
You might also like
book
The Rust Programming Language
"The Rust Programming Language is the official book on Rust; a community-developed, systems programming language that …
book
Programming WebAssembly with Rust
WebAssembly fulfills the long-awaited promise of web technologies: fast code, type-safe at compile time, execution in …
book
Hands-On Data Structures and Algorithms with Rust
Design and implement professional level programs by exploring modern data structures and algorithms in Rust. Key …
book
Rust for Rustaceans
For developers who’ve mastered the basics, this book is the next step on your way to …