Skip to main content
Command-Line Rust: A Project-Based Primer for Writing Rust Clis

Command-Line Rust: A Project-Based Primer for Writing Rust Clis

Current price: $65.99
Publication Date: February 22nd, 2022
Publisher:
O'Reilly Media
ISBN:
9781098109431
Pages:
400
Usually Ships in 1 to 5 Days

Description

Updated in 2024: A new version has been released that simplifies the programs used in the book, based on changes in the Rust language and crates since original publication. The code has been updated to reflect version 4 of the clap crate.

For several consecutive years, Rust has been voted "most loved programming language" in Stack Overflow's annual developer survey. This open source systems programming language is now used for everything from game engines and operating systems to browser components and virtual reality simulation engines. But Rust is also an incredibly complex language with a notoriously difficult learning curve.

Rather than focusing on the language as a whole, this guide teaches Rust using a single small, complete, focused program in each chapter. Author Ken Youens-Clark shows you how to start, write, and test each of these programs to create a finished product. You'll learn how to handle errors in Rust, read and write files, and use regular expressions, Rust types, structs, and more.

Discover how to:

  • Use Rust's standard libraries and data types such as numbers, strings, vectors, structs, Options, and Results to create command-line programs
  • Write and test Rust programs and functions
  • Read and write files, including stdin, stdout, and stderr
  • Document and validate command-line arguments
  • Write programs that fail gracefully
  • Parse raw and delimited text manually, using regular expressions and Rust crates
  • Use and control randomness

About the Author

Ken Youens-Clark is the author of Tiny Python Projects (Manning, 2020) and Mastering Python for Bioinformatics (O'Reilly, 2021). Ken is a senior-level developer with 25 years of experience writing and supporting code written in many languages who has spent several years teaching beginning coding at the university level, and is deeply committed to creating useful teaching resources for people who wish to learn coding.