The Rust Programming Language is the official book on Rust, an open-source, community-developed systems programming language that runs blazingly fast, prevents segfaults, and guarantees thread safety. This is the undisputed go-to guide to Rust, written by two members of the Rust core team, with feedback and contributions from 42 members of the community. The book assumes that you’ve written code in another programming language but makes no assumptions about which one, meaning the material is accessible and useful to developers from a wide variety of programming backgrounds.
Known by the Rust community as “The Book,” The Rust Programming Language includes concept chapters, where you’ll learn about a particular aspect of Rust, and project chapters, where you’ll apply what you’ve learned so far to build small programs.
The Book opens with a quick hands-on project to introduce the basics then explores key concepts in depth, such as ownership, the type system, error handling, and fearless concurrency. Next come detailed explanations of Rust-oriented perspectives on topics like pattern matching, iterators, and smart pointers, with concrete examples and exercises--taking you from theory to practice.
The Rust Programming Language will also show you how to:
• Grasp important concepts unique to Rust, like ownership, borrowing, and lifetimes
• Use Cargo, Rust’s built-in package manager, to build and maintain your code, including downloading and building dependencies
• Effectively use Rust’s zero-cost abstractions and employ your own
You’ll learn to develop reliable code that’s speed and memory efficient, while avoiding the infamous and arcane programming pitfalls common at the systems level. When you need to dive down into lower-level control, this guide will show you how without taking on the customary risk of crashes or security holes and without requiring you to learn the fine points of a fickle toolchain.
You’ll also learn how to create command line programs, build single- and multithreaded web servers, and much more.
The Rust Programming Language fully embraces Rust’s potential to empower its users. This friendly and approachable guide will help you build not only your knowledge of Rust but also your ability to program with confidence in a wider variety of domains.
Author(s): Steve Klabnik, Carol Nichols, Rust Community
Edition: 1
Publisher: No Starch Press
Year: 2018
Language: English
Commentary: True PDF
Pages: 552
City: San Francisco
Tags: Command Line; Programming; Multithreading; Games; Concurrency; Functional Programming; Object-Oriented Programming; Web Servers; Rust; Testing; Cargo
Chapter 1: Getting Started
Chapter 2: Programming a Guessing Game
Chapter 3: Common Programming Concepts
Chapter 4: Understanding Ownership
Chapter 5: Using Structs to Structure Related Data
Chapter 6: Enums and Pattern Matching
Chapter 7: Using Modules to Reuse and Organize Code
Chapter 8: Common Collections
Chapter 9: Error Handling
Chapter 10: Generic Types, Traits, and Lifetimes
Chapter 11: Writing Automated Tests
Chapter 12: An I/O Project: Building a Command Line Program
Chapter 13: Functional Language Features: Iterators and Closures
Chapter 14: More About Cargo and Crates.io
Chapter 15: Smart Pointers
Chapter 16: Fearless Concurrency
Chapter 17: Object-Oriented Programming Features of Rust
Chapter 18: Patterns and Matching
Chapter 19: Advanced Features
Chapter 20: Final Project: Building a Multithreaded Web Server
Appendix A: Keywords
Appendix B: Operators and Symbols
Appendix C: Derivable Traits
Appendix D: Macros